Here's one thing that looks suspect:
var diff = (this.Axle.Vehicle.Body.Entity.CollisionInformation.LocalPosition - this.Axle.Vehicle.Body.Entity.Position);
LocalPosition is in the local space of the entity. So, if LocalPosition is (0, 1, 0) and the entity.Position is (1,1,0), then the center of the collision shape will be positioned at (1, 2, 0). If the entity were rotated 90 degrees around the z axis so that the local space Y axis pointed along the world space X axis, then the center of the collision shape will be positioned at (2,1,0). If you want the world space offset from the center of mass (entity.Position) to the center of the collision shape, then rotate the LocalPosition by the entity.Orientation.
Because of this, subtracting the center of mass (entity.Position) from the LocalPosition isn't really a valid operation; the vectors are in different spaces.
I would recommend trying to configure something more restricted in scope. For example, trying to fiddle with the SuspensionCarDemo would let you see the physical effects of individual changes without worrying about the graphics yet.