Now, without even reading your code, just by logic: If your YELLOW becomes PURPLE, then you're misplacing the GREEN and the BLUE RGB components.
In facts, this: #ffcccc00 is YELLOW and this #ffcc00cc is PURPLE.
So, you see that in #aarrggbb gg and bb are misplaced.
Now, by reading your code, I have the confirm:
argb = Color.argb(alpha, redValue,blueValue,greenValue);
should really be:
argb = Color.argb(alpha, redValue, greenValue, blueValue);
(a, r, g and b - not a, r, b and g)
;)
It happens.