This is right, isn't it?
The LocalPosition is the offset from the entity position to the center of the collision shape in local space. If the entity has nonidentity orientation at the time of this calculation, the LocalPosition will not be correct.
Another minor point- the entity's Position is its center of rotation. It may be more intuitive (though equivalent) to simply set the position directly to the centerOfRotation.
Are there any cases when drawing with CollisionInformation.WorldTransform.Matrix will produce an incorrect result? I already know that it won't work when the entity being drawn isn't in any Space, but other than that, is there anything?
Two possibilities come to mind:
-The collision information world transform operates purely on internal data. If some code uses interpolated states and some other code uses the collision information world transform, there will be an inconsistency. The result will likely be a jittering or half-updated (out of sync) appearance.
-The world transform points to the center of the collision shape. If the graphic is not consistently aligned but is positioned using the transform, it will be offset.
As far as any situations where the collidable's world transform itself is 'wrong' with respect to the physics- no, that should not be possible. That world transform is the true physical state used internally to perform collision detection.