By adding the body to the space, you are asking it to update the velocity and position. The velocity is updated first by using gravity, the other forces. After that, the collisions and constraints are processed (based on the existence of collisions or constraints added to the space, not the presence of the body in the space). Finally the position is updated based on the velocity.
In your case, you aren't adding the body to the space so it's velocity is not updated by gravity and other forces. It's velocity is still modified by collisions and constraints if there are any. By simply setting the position explicitly without taking it's velocity into account, the constraints have no way of having any control. Also, by setting the position explicitly, but not making sure that the velocity is synchronized, objects colliding with any of it's shapes will not know that it is moving and the collisions may look soft.