The <canvas> drawing model is a very thin layer over the Mac OS X Cocoa drawing model (because it was originally developed by Apple as a proprietary extension to Webkit). The Cocoa drawing model is based on the "Display PDF" model, which is a descendant of the "Display Postscript" system used by the original NeXT OS, which of course was derived from the PostScript page layout language.
I think Cairo just borrowed the PostScript drawing model from the start.
Why not just knock off a good API, like that for <canvas>?