How to overlay a texture onto character's skin

I am working on a character customizer and I’d like to have the ability for the user to add details to the character, for instance freckles/tattoos. I am struggling to understand exactly how the masking should work in order to accomplish this. In my skin material, I have a freckle texture, a mask, and I’m lerping them together with the normal skin diffuse texture:

I expected that this would result in the freckle texture being overlayed onto the character’s face. Instead the result is that the texture is overlayed, but the white part of the mask is being overlayed with it:

When I remove the freckle texture altogether, the white on the face still remains, so it seems the masking texture itself is being overlayed.

If anyone could provide insight on how to use masks properly in this instance I would very much appreciate it

What you see is exactly what I would expect to see.
The texture “B” is white. You’re blending in a white texture, based on the mask.
I don’t understand how you’d expect anything else to happen?

Maybe what you really expect to do is to multiply the texture, rather than blend it?
If so create a multiply node that multiplies input texture with freckles texture, and then lerp between un-multiplied input texture, and multiplied texture-with-freckles using the blend mask.

That solved the issue. The white texture as seen in the editor contains the freckle details, but the background is white so it’s hard to see them. In any case your solution fixed it. I didn’t understand that I was supposed to multiply first and then lerp. Thanks for your quick response.

Glad it worked! If it helped, feel free to click the little up arrow icon on the answer.