A far nicer solution would be to use wxPerl. It is a GUI toolkit but also includes a very high-level printing framework. You can get a Win32 binary of wxPerl. wxPerl works a treat on Win2k.
You can use the Wx::HTMLEasyPrinting class--it works by you specifying the document as HTML. It can accept either a filename or variable containing the HTML.