One major cause for this is that most business cases assume 100% user adoption and ignore the impact low levels of adoption have on ROI. As you know, benefits are only realized if your people actually use the system consistently and effectively. Unless you currently have full and effective adoption of your existing systems, it is naïve to think that you will achieve 100% adoption of your new systems.
To account for less than perfect user adoption, you need to examine how different adoption levels affect your business case. If you find that the projected ROI no longer makes sense you can either scrap the project or determine what additional resources and effort are required to increase adoption to the point that it will deliver an acceptable ROI.