I think it's likely that both sides of the argument are correct. There are a large amount of STEM jobs that are not being filled, while at the same time there is a surplus of STEM graduates.
The takeaway is that businesses don't just need people that have STEM degrees, they need people that will add value to their company. Just because you have a STEM degree does not mean that you'll be a net positive for the company.
It seems to me that incentives for colleges right now are way out of wack. They're not doing a good enough job at preparing students for actual industry roles (elite institutions being the exception), yet their enrollment rates and the cost of their tuition keeps going up.