Canon recently released a printer driver for this printer:
http://support-asia.canon-asia.com/P/search?model=PIXMA+MP648&menu=download&filter=0&tagname=ca_os&ca_os=Linux

I've had mixed success...