Vsync is very important for smooth movement. Enable vsync, and use the frame number as the basis of the positions where you draw (if you use the system time there will be a small timing jitter as the frame will only be drawn=shown at the next vsync).