As others have noted, there are 3rd party solutions that involve running a special app on a machine on your network.
The solution I've employed, since I have an HP LaserJet 2420dn (a non-AirPrint printer), and also run a server full-time, is a bit more elegant. The server is a small VMware ESXi server. I added a FreeBSD VM, and installed a handful of packages (avahi, cups, gutenprint-cups and py26-cups). I added my printer to the CUPS install and shared the printer out, so it's accessible via IPP. The Gutenprint driver/filter adds PDF support (all AirPrint apps send PDF to the printer). The last piece is an Avahi service configuration that advertises the printer on the LAN. Works great with my wife's iPad1. Still waiting on delivery of my iPad2.