Let's say I'v got those samples here:



What I would like to do is get the faces on those photos as close in both color and luminance to the sample skin_tone below:

I'v tried composing them with the skin tone using threshold blend mode as well as the colorize one, but both give results that I just can't use.
I'v gone so far as to put the skin_tone onto the samples with colorize, then making a difference mask using the colorized sample and the skin_tone image and then using that with CopyOpacity from the oryginal sample to get just the parts on the image (eyes and nose and mouth), but I would still like to be able to match the colors using the skin_tone.jpg to get something like this:

any ideas?