90 days was because they didn't think a rover would last over 90 days due to dust storms. They figured that after 90 days they'd encounter a bad dust storm that would cover the solar panels and make them unable to collect power, and thus the battery would be drained and unable to charge after 90 days.
They didn't account that the winds on mars would be able to clean the solar dust off the solar cells so well that it turned out dust storms weren't a huge issue until the latest one.
And from my understanding it wasn't the intensity of the latest storm that killed it but the part of the rover's computer that kept track of time was shot, so it wasn't able to optimize when to go to sleep and when to wake up properly, causing it to run out of charge while it was dark.