As a sideline watcher for 2+ years, this is what I shake my head at everyday.
A 95% signalling Hardfork Segwit + 2Mb blocks would have easily gotten 95% of the community behind it. Such a simple compromise. Tragic that it didn't happen.
But, my question is still serious. With 95% needed, why not implement a cleaner hardfork?