Well it seems I fixed my issue. I only have port 631 on upd open (of those suggested in this thread) in iptables, iptables is enabled and I can print to WinXP. The problem I had was that even though the printer was indeed shared properly etc, it wasnt plugged into the WinXP machine.
I must have overlooked that plug when i was messing around adding new hardware to my XP box.
Thanks for everyone's help. In the future i will look for the most obvious reasons first!!