I found workarounds.
Printing
The network printer can be installed if you enter the URI manually. When adding a new printer, select EnterURI from the devices list and enter cnijnet:/01-23-45-67-89-AB where 01-23-45-67-89-AB is the MAC address of the printer. You have to manually select the printer model for the driver, but everything prints as it should.
If that doesn't work, follow the manual instructions from http://linux.wikia.com/wiki/Getting_Canon_PIXMA_to_work_on_Linux:
$ cnijnetprn --search auto 
<...Wait for system search...>
network cnijnet:/00-1E-8F-B6-E0-1A "Canon MX860 series" "Canon-MX860-series_00-1E-8F-B6-E0-1A"
$ locate mx860.ppd
/usr/share/cups/model/cnmx860.ppd
/usr/share/ppd/cnmx860.ppd
$ sudo /usr/sbin/lpadmin -p CanonMX860 -m cnmx860.ppd -v cnijnet:/00-1E-8F-B6-E0-1A -E
the -p option specifies printer name, the -m option specified ppd file. The ppd file for your printer should be included in your binary driver package and at this point should have been installed in /usr/share/ppd. The -v option specifies device uri (copy it from cnijnetprn's output).
Scanning
For scanning, edit /etc/sane.d/pixma.conf and add the line bjnp://10.0.0.20 (the Pixma's IP address). List the devices to make sure Ubuntu can find it with
$ scanimage -L
device `pixma:MX860_10.0.0.20' is a CANON Canon PIXMA MX860 multi-Function peripheral
You can additionally edit out unnecessary backends (all but pixma) from /etc/sane.d/dll.conf. That should speed the discovery up a bit. For more details, check out man sane-pixma.
Although I couldn't find any documentation as to why or how, the Canon network printer discovery protocol doesn't work right in 11.10 as it does in previous versions – perhaps a discovery timeout issue. Still, everything is up and running now.