One of the secrets of OS X is that all programs produce postscript, and every printer queue/driver must accept postscript and create the codes to print on the particular printer. So, your Mac's print queue expects to receive postscript and then the driver converts it for the Canon.
You need to use a postscript print driver on the PC to send postscript to the mac. A good generic one (included in XP) is Apple Color LaserWriter xx.
Do what you were doing (Bonjour or Windows Sharing for example), but use a postscript driver on the PC.