Was caused by non-normalized coordinates (normals). Note this is not 100% correct as the dFdx functions can be the same for packs of 4 pixels and the derivated value can only be correct for one pixels. This is because smoothed normals are a non-linear function (because of the normalization). The correct fix would be to do the dFdx offset BEFORE any normalization.