Could it be that rviz actually is using both the present and the
future dated transforms and 'interpolating' for the time in between?


This is what's happening.  When you send the transform at 600.1 the one at 0 gets removed from the back of the queue.  For most nodes in the system it would be 10.1 instead of 600.1.

Josh