Using CGContext directly will be simpler, and probably faster.
Created attachment 3851 [details] patch to move to CGContext, some other small improvements
Comment on attachment 3851 [details] patch to move to CGContext, some other small improvements r=me _fillRectXX finally meets its maker!
Chris measured a performance regression that he tracked down to this bug. I'm reopening so we can address the performance issue.
We're doing this again as of my recent check-in -- I don't think we'll see the performance regression this time.