Du bist ja äußerst sparsam mit Informationen ...
Interessant wäre z. B., wie groß die Bilder sind und was genau dein Problem ist (Flackern beim Refresh?).
Ich würde es so machen: Die schwarze Fläche ins Image, das aufzudeckende Bild in ein Bitmap. Dann im MouseMove-Event abfragen, ob die linke Maustaste gedrückt ist und falls das der Fall ist, mit CopyRect einen Block aus dem Hintergrundbild in das Image kopieren und danach einen Refresh auslösen. Nicht vergessen, beim Image doublebuffered auf true zu stellen.
Warum ein Block? Weil du wahrscheinlich keine kontinuierliche Änderung der Mauskoordinaten mitbekommst und ansonsten auch ziemlich viel 'kratzen' musst, wenn du das nur pixelweise machst.
Das ist jetzt aus Sicht der
VCL geschrieben, aber das Prinzip müsste für FMX auch gelten.