You're right that a lot of new money is pouring into MLB (as well as the NFL and NBA).
However, you're overlooking what the general premise of criticism is:
No player over 30 should get a 10-year deal. By definition, the contract length is a mistake regardless of how Cano performs for the first 6 years.
Can any team really afford to make a $240M mistake?
So IMO it's not whether the M's made a mistake, but how many back-loaded dollars will be wasted at the end of the contract. It was the same question applied to Albert Pujols, and the same for Prince Fielder even though the heavyweight slugger is a lot younger.