Printing under Unix systems has always sucked. Over the last view years it's gotten better, but it wasn't until CUPS, the Common Unix Printing System, that it finally became decent.
See also: SambaDomainController
Documentation
Using Foomatic to configure under RedhatLinux