Changing the icon image dynamically could be a bit of a hassle since it would actually involve modifying the .info files, resulting in a lot of disk extra accessing.
However, simply changing the colour is much easier. The icon.library could be patched to tint icons various colours depending on some user preference based on size or last modified parameters.