This sounds awfully specific but roCompositor.SetDrawTo() does not seem to check its argument.
I spent some time trying to figured out why example code i was massaging/ref**toring stopped working and showing anything on screen at all. Turned out i started passing dictionary (roAA) instead of
roBitmap or roScreen - but there was no indication anything was wrong, SetDrawTo() remained mum. Moreover the subsequent calls to compositor and roScreen method did not complain at all either. None, null, nunya indication something was wrong.
There should have been an error message!
I know one can say "garbage in - garbage out" but what's the point of interpreter being malicious? There is a piece of code somewhere that checks if destBitmap is roBitmap or roScreen (or a common interface therein) - it should throw an error for developer to see. Preferably right where it happened (SetDrawTo) but if it bitches during drawing, that would be acceptable too.