Things are different today when most, with some significant and outstanding exceptions, couldn't care less about their public image.
It's not so much about public image (they have the heritage stuff dealing with that), it's just that railroads aren't in the public eye like they used to anymore, so there's very little rhyme or reason spending $$$ to take an engine out of service just for cosmetic sprucing-up when it can still be out pulling freight and earning revenue.
To paraphrase one of the former executives from the Southern Pacific Railroad, "A dirty engine pulls just as well as a clean one." In the case of the Southern Pacific, they had a legit reason to give up on keeping their roster clean: With Donner Pass and even the Shasta Line's mountainous passes with snowfall and miles and miles of snowsheds and tunnels, keeping engines clean was pretty much almost an exercise in futility since an engine would get dirty again pretty quick going over those routes. Keeping higher profile services like passenger trains tend to make more sense. SP kept their commuter trains in the Bay Area pretty clean up to the end.