A couple of pointers:

1. Make sure Network Discovery is ON on the Vista PC and you are connecting to a Public/Work type network.

2. "Print Spooler Service not running" maybe an indication that either: (a) Users do not have a right to install printers (ie printer drivers and printer ports), or/and (b) you need to login as an admin that has said rights.

3. It is basic practice to give all servers a static IP. That includes print servers embedded into printers (as is the case with so-called "network printers"). If the print server gets its address from DHCP, I would advise changing to static.

4. Microsoft does things with printers in the typical unorthodox and convoluted way. A "network printer" according to Microsoft is a shared printer attached to another computer. A real network printer (as in printer with embedded print server) is actually installed as a "local" printer. There's a method to their madness: Windows sends output to printer ports, not printers. In the case of shared printers, Windows prints directly to a port of the computer that has the printer attached. Since this is a remote computer, this becomes a remote (network) printer port, and therefore a network printer.
When you install a real network printer, Windows creates a printer port on your machine. So for Windows this is a "local" printer, even if that's a printer located on the other side of the planet.