Because, take it or leave it, when you're on a battlefield with no clean roads, you're essentially on dirt killing others left and right, it's normal for blood and dirt to get on your armour. It's normal for it to get dirty. Yes, when they're in Stormwind I expect their armours to be clean, but when they're out fighting and the armour shines like they've just been dropped from a helicopter... it looks awkward.