Just a thought, since it is only drifting in one direction - are you getting a full 5v from the parallel port, since if it is too much under 5v, it might not get the direction signal to change direction.
You can tell I am clutching at straws now, but might pay to check.