Потому что при разработке больших проектов (особенно командой) легко можно получить ситуацию, при которой попытка переопределения или наследования кем-то стилей, которые изначально определены с !important, не увенчается успехом. И из такой ситуации два пути выхода: использовать еще несколько !important, или попытаться убрать изначальный (что может привести к другим проблемам и так далее).
Но, important - это не зло, это очень важный инструмент. И его можно, а в каких-то случаях и нужно использовать. Крайне нежелательным может являться лишь злоупотребление оным.