How about this?
ImageMultiply @@
Table[
ArrayPlot[RandomReal[{0, 1}, {5, 5}], ColorFunction -> (Blend[{White, color}, #] &)],
{color, {Yellow, RGBColor[0, 0.6, 1]}}
]
The same operation can be done on the Raster data to preserve full scalability:
gr =
Table[
ArrayPlot[RandomReal[{0, 1}, {5, 5}], ColorFunction -> (Blend[{White, color}, #] &)],
{color, {Yellow, RGBColor[0, 0.6, 1]}}
]
Graphics[
Raster[gr[[1, 1, 1]]*gr[[2, 1, 1]]],
Options[gr[[1]]]
]