This is a variant of "Expecting math calculations to be exact" in common mis-used events and gotchas.
R0J0hound is right that you are running in to the precision limits of floating point numbers on computers, so closing as won't fix.
You only need to hold down W for a short while to get 100,000,000 pixels away. Internally the engine stores positions as double-precision floats, which have integer precision up to 2^53 (= 9007199254740992). However for performance reasons the renderer uses single-precision floats, since this uses half the memory bandwidth, is faster to process, and is still perfectly suitable for virtually all realistic uses. This means when it comes to draw the object it only has integer precision up to 2^23, which is 8,388,608. Basically beyond that point there will be rounding due to the limited precision, and the further you go the more severe the rounding is, which appears as the object shaking as it goes further.
Making the renderer use full double-precision floats would cause all games to take a performance hit. This is a really extreme example which it should be easy to work around: you don't really need to move the object that far, you can do a lot with just faking it (e.g. not actually scrolling but showing stars in the background shooting past really fast, or something similar). As far as I can tell from a quick glance at the source, CC also used single-precision floats in its renderer, so ought to be subject to the same problem, but maybe I forgot some aspect of the renderer that uses better precision. CC is officially retired and hasn't been updated for years though, so I would say don't even consider it!