SharePoint is great as a framework, and developers find it great to develop on top of it. However the share lack of business specific focus makes it a very difficult application to work with when it comes to using it to meet a specific business need.
Although each business has its unique requirements, however there are industry specific norms that are common, and an application that can address industry specific needs makes it a easier win.
IT teams find it a challenge to use the sharepoint framework capabilities to meet the specific business needs, but in doing so it ends up being a bigger job then it would have been to develop a custom application to meet the needs. Hence a customisation which ends up taking a year or so, is already outdated, and possibility is that Microsoft might already be coming out with a newer version with capabilities that the IT team has custom developed over a long time.
SharePoint provides capabilities in the form of Widgets, however the built in templates do a very poor job bringing together these widgets to provide a solution. Most of the templates are focused towards technical needs rather than business specific needs.
In my view what can make a huge difference in SharePoint adoption is to provide business specific templates to address specific business need. SharePoint team now needs to eat their own dog food and use their framework to provide business applications. This can be a set of templates that provide a starting point for say a law firm or a financial institute.
The learning from desperate efforts of various organisation within the same business line need to be harnessed to provide industry specific solution which is a superset of these desperte implementations.