ntpdate -B will slew the time in fractions of a second (ie, a few minutes offset will require hours to sync). The reason it is so slow is to prevent the loss/gain of any one second period. Essentially, ntpdate makes the clock run just a bit slower or faster as needed.
Now this is only needed in a production system where databases and time-critical programs will be able to account for every second (or not see the same second more than once). Now if the server is not running any appications, you can step change the time with ntpdate -b rather than -B.
Also test your servers (note: plural) by using:
ntpdate -p
You will see a list of all the time servers used by this system. Then query each of the servers with ntpq -p server_name to see that each of them are working correctly. The key column is: reach and should be 377 which means a high quality connection.
Bill Hassell, sysadmin