Ah, I see. Hmm. There isn't a way to use a custom shader with drawAtlas today (it always assumes an SkImage). We've talked about offering an SkShader version of drawAtlas before - I don't remember if it was just omitted because there was no demand, or if there was a good reason (I can't think of any). I was going to suggest a tedious approach of using drawVertices, which does allow a shader. Unfortunately, the way that blend mode operates (for both atlas and vertices) is to combine the shader/image output after the shader runs. So even with a custom shader, you wouldn't be able to do what you want, unless/until we change how the per-sprite or per-vertex colors are fed into the custom shader.
Unfortunately, I don't think I have a great solution today.