Hmmm, I dove into the way the Render method works, and finally grasped the idea Took a while...
Although it's excellently thought out for effects that alter the existing image, or those effects that draw a new image based on some translation of X and Y coordinates, it seems that the current method can't be used (efficiently) for the stuff I'm trying with my Orb Generator. My calculations are not based on X or Y coordinates, just on the size of the surface or users selection.
Anyway, I did find a way to fix this, although I'm not sure if this is how it should be done. I've created a static Bitmap variable, so I only draw the bitmap once onto that.
After that, during each Render call, it only copies the correct part to the target surface. That works like a charm.
Now I only have to find out how to determine the size of the complete user selection (since it still uses the size of the TargetSurface, and not the bounding rectangle of the users selection). Is that possible? (I found some requests on this topic, but couldn't find a good answer).