You didn't say if the printer was cinfigured for NDPS or traditional print queues; for the moment let's assume traditional print queues.
I'll also assume that after upgrading to WinXP, you downloaded the latest Netware client (4.83SP1) if you weren't already running it, and installed it in single protocol mode (IP or IPX). This is an imperative update for WinXP.
Since the printer works on your Win98 stations, it's a safe bet that the print server software (PSERVER.NLM) is up and running and that the print queue is being properly serviced.
When you add a new printer to the WinXP, you would choose "Network Printer", then "Browse for printer". From the Netware/NDS printers group, choose the *queue* that the printer is servicing. Unfortunately, Win2Kpro and XPPro don't allow you to change the label of the printer in your printers folder. It will always be "some printer on some server".
If it doesn't appear to be sending data to the printer, try using NPRINT to send a plain ascii file to the printer:
NPRINT C:\AUTOEXEC.BAT /q=.hp2200.my_ou.my_o
I've seen some instances with HP printers where they work better if you capture an LPT port, then set up the printer object in Windows to send data to that port. I'm not sure why, but I suspect it's driver related.
When the dust settles, make sure you set the printer properties to "print directly to printer". No use in spooling the job on your machine just to spool it again at the server.
HTH.