I did this for a commercial product. Without showing you the source I can say it involved splitting a HEX color code into its R, G and B components, then dividing the difference between the initial R and target R by how many steps you want to make (the more, the smoother the tween), then changing the color to the current R plus the step factor. Then doing the same for G and B. It sounds harder than it is. (Note I did this in Flash 5.. in Flash MX there may be a better way which I aint seen yet). In fact... look into setTransform because I think that can handle such things. My application was slightly different and could not use that method.
Please don't email or PM
me Flash questions, that's what the Forums are for!
Please don't rely on me reading my PMs either. Email me about important stuff.