This article only looks at "seen" costs, and assumes that there are no "unseen" costs to running on-prem. Many companies do not have the operational maturity to run on-prem well. The result: high cost of operations, low availability, and large increase in time-to-value.
Second unseen cost: everybody becomes their own SI. So far nobody really sells the "whole stack" for running on prem. I mean hardware, network, virtualization, application, traffic mgmt, etc. I have to buy stuff from two dozen different vendors and cobble it together into a high-labor, rickety Jenga tower of stuff.