dan.p: Thanks for the suggestion. It's actually already on my todo-list, but since it requires some heavy code changes internally in GapiDraw I have saved it for an upcoming release.
In the mean time, it should be quite easy to write your own "surface wrapper", e.g. "CSurface" in namespace "gfxlib". It shouldn't take more than a couple of minutes to put it together, just copy the class description of CGapiSurface, add a member variable "CGapiSurface* m_pSurface", and call the appropriate the function.
I believe most people use their own wrappers to GapiDraw, which is why not more have complained about the const correctness.