Not sure how XP works for sure, but in 2000 the default printer can be set in the registry by using the following line:
code:
 WRITEVALUE ("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows", "Device", "$NewDefPrnt", "REG_SZ") 

All you have to do is set the $NewDefPrnt value in your script. This was a line from a script I wrote to change printer settings after moving print queues to another server.