Solution 1:

You haven't mentioned adding pushprinterconnections.exe to run in your Printer GPOs. You will need this to push printers to XP machines. You can get the file from Windows 2003 R2 Admin Tools by downloading pmcmgmt.exe and extracting it on an XP machine. Add this file to the GPOs in the Computer Configuration> Windows Settings> Srcripts(Startup/Shutdown).

Solution 2:

I think one problem that you might find is that you cant add XP drivers in the Server 2008 R2 console. To install the drivers for XP you have to go to "\printeserver\Printers and Faxes" from an XP/srv2003 machine (32bit), click on the Server Properties box on your left in the Printer Tasks area. Select teh Drivers tab then Add.

and then im just gonna throw some technet links at you that might help for the GPO part:) Please make sure the computers are able to read the GPO also^^

http://technet.microsoft.com/en-us/library/cc722179(WS.10).aspx

http://technet.microsoft.com/en-us/library/cc731292.aspx

good luck

Solution 3:

We use this little vbscript to map printers according to security group membership on login.

Function MapPrinter (strServer, strShare)
    wscript.echo "Mapping \\" + strServer + "\" + strShare

'Set WshNetwork = WScript.CreateObject("WScript.Network") 
WshNetwork.AddWindowsPrinterConnection "\\" + strServer + "\" + strShare
'WshNetwork.RemovePrinterConnection "\\ServerName\Printer Share Name" 
end function