There's nothing wrong with T20 as a format of the game. In addition there's nothing wrong with it cross-subsidizing the longer format of the game. There's nothing wrong with having franchise cricket either per se.
The problem is that there is extreme corruption in certain parts of the world that mitigates against the functioning of 'normal' society and sport leaders seem to think they will avoid such problems when they hold cricket tournaments or Formula 1 races in these parts of the world.
Also there is a tendency to think that slick marketing can make anything popular, but the enduring sporting events have become so not through any marketing campaign but through the fact that there is an emotional attachment to the event, which cannot easily be replaced or moved. Even worse, marketeers think that if something is popular, then more of it should be done!
This is why The Ashes has been so popular - and why the idiots who keep bringing the Aussies back for meaningless interim ODI tournaments should be shot. Frankly, the T20 Champions League was flawed because the tournament is based upon mickey mouse tournament winners playing each other annually across the world. The real Champions League has its problems (e.g. over long over exposed) but it is based on regional rivalries and is part of a long tradition of European tournaments in football.