You may have to set up a second printer (in printer control panel) on the laptop. When you set up the printer pointing to the Vista shared printer, it is likely a different network path than when the desktop is running XP.
Another option is to buy a print server that will connect to the dsl modem, eliminating the desktop sharing.
IOGear print server