Custom Colour for Dirty & Worn Paint?

Hello. I’m wondering what would be the most performance efficient way to mask out paint on an object so that I can give it a custom colour within a material instance.
What complicates things is that there’s subtle dirt and such on this paint, which is brown, so I can’t simply use a mask texture for the paint and hope to still have the dirt colour after I multiply/lerp.
Only thing I can think of is having to create a mask for the dirt and add it on top of a clean version within the material, I’m wondering if there are more simple and cheaper methods?

I basically just rearranged the way I put things.

Rather than masking the paint out of the final texture, I used a vector 3 and masked out the edge wear and dirt from my texture and placed that on top of the colour.