Stepper motor off sync

The beginning of your loop before switch could just be:
curStep++; delay(2);

Check out my code it's easy to try:
http://arduino.cc/forum/index.php/topic,89159.0.html