I just did this with Redhat Fedora Core 3 and Samba. Redhat 9 is rather old, so I don't know if Samba will work as well on it.
In brief here's what I did:
- Got server RPMs for Samba. The FC3 distro already had the client ones installed.
- Installed RPMs.
- Read users guide on Samba website.
- Setup Cups with a raw print driver to the shared printer
- Configured Samba in shared mode through swat (also requires a rpm)
- Added network printer to XP machines and installed Windows driver
(1) swat is cool, but not necessary for configuring Samba
(2) my Linux and XP machines are on the same LAN