Forgot to mention, this is only on Windows XP (as we don't have any wide deployments of Vista or 7 here). So UAC isn't mucking with things at least.

As for cd /d "%~dp0", that is:

/d allows changing to another drive
%0 would normally be the filename of the script running
~dp before the 0 adds in the full path with drive letter.