Try adding a call to Dispose() at the end of your axMap_OnDrawBackBuffer() method:
g.Dispose();
Resolved the issue for me. MSDN recommends this as well (http://msdn.microsoft.com/en-us/library/20tc8e3b.aspx).
g.Dispose();
Resolved the issue for me. MSDN recommends this as well (http://msdn.microsoft.com/en-us/library/20tc8e3b.aspx).