It took me all day searching, turning off firewalls, updating drivers, trying workarounds and finally I found the solution - you need to fix the IRPStack on the XP machine, by editing the registry as per the instructions at the following Microsoft Knowledgebase article: Antivirus software may cause Event ID 2011
Credit for this fix has to go to Alan Morris from the Windows Printing Team at the TechArena forums in the following post: Connecting a Vista machine to a printer shared on an XP machine. - Vista Print and Fax
This issue is usually caused by anti-virus or firewall software, especially Norton Antivirus.
Note: I tried the default setting of 15 and the problem remained, I changed the value to 50 (the maximum) and it worked. I then tried 25, which also worked so I've left the setting there.
Different values may work in your case - I have a Canon PIXMA ip4300 and my anti-virus is PC Tools Internet Security 2010.