If your using concave polygons you need to run them through a decomposer before using them in the engine. I recommend the EarClip decomposer because it seems a little bit more stable in my experience.
public static System.Collections.Generic.List<Vertices> ConvexPartition(FarseerPhysics.Common.Vertices vertices)
Member of FarseerPhysics.Common.Decomposition.EarclipDecomposer
Just give it the vertices for your polygon and it will give you back a list of convex polygons that equal the concave one. Then you just need to add each item from the list to body.
I hope this helps. If not let me know whats not working.