color is a valid argument for image(), look at the icon update sprites.

The head item slot also uses the color of the object that is equipped, without recolouring the whole sprite, meaning it is possible to specifically colour overlays.

Even twice is unacceptable, especially now that we have alternatives which are much better; since resources aren't cached and you would have to implement a system for caching them everytime you use icon operations, otherwise you face problems with resources having to be downloaded to everyone everytime you make one.