I've run into the exact same problem with the latest build of farseer on Windows Phone. It seems pretty easy to reproduce when casting against axis aligned boxes. It also seems oddly random, that's to say casting a ray through two boxes on every frame from
the exact same position will often result in the ray very randomly either returning the first hit box or skipping though that box and hitting the second. That's been my experience at least.
A work around seems to be allowing the raycast to return all objects it hits by always returning -1 in the ratcast callback. Then arrange the results so that only the nearest hit is saved. It seems the raycasting will always return the first hit object
but it might not always be the first one to be sent back through the callback.
Hope this helps people dealing with the same problem.