Hi Peter,
Is server-side caching an option? Or are there too many permutations?
Besides the network bandwidth, there will also be a good bit of client-side overhead preparing the tile, but it may still be better. You'll need CORS or a proxy to be able to read back from Canvas, but I assume you already have it.
This could also be done on the GPU similar to how we reproject Mercator (well, Canvas may already use the GPU, but I bet there is still a CPU read back on most implementations to share with WebGL). Kevin can advise on how hard this would be, but we are both heads down getting ready for SIGGRAPH next week so bare with us.
Regards,
Patrick