EtherPad is open source now. Granted it's a totally different application than drawing, but who knows, some of the code might be interesting/useful.
My "drawings" are represented by text (JSON), and if normal text merging methods will work, I might want to use differential synchronization (seems easier). But I wish there was something proving that it won't mess up the integrity of my structured data.
Links:
Wave protocol: http://www.waveprotocol.org/ and http://code.google.com/p/wave-protocol/source/checkout
Mobwrite: http://code.google.com/p/google-mobwrite/
Etherpad: http://code.google.com/p/etherpad/
http://blog.mozilla.com/rob-sayre/2008/02/15/restful-partial...
It works well except when array elements move around (that works, it's just unintuitive)