A Vice President of Infrastructure at a large company once told us something like this, I like hardware. My hardware hardly ever breaks. The software I deploy breaks all the time. When my data center becomes software, how will I ever have a stable platform? Although the same concern could (and probably should) have once been applied to virtualization, most organizations today are very comfortable with the idea of software pretending to be hardware. The software-defined data center is something a little more intimidating though. Although we've had software pretending to be a CPU for a long time, we've only had software pretending to be a storage array relatively recently. Also, when the storage array goes down, everything tends to come down with it.
However, maybe the bigger question is around software constantly breaking...