I think a big problem is that you can cheat the current system. Not going to say how but it’s not very hard to do it either. If they fix it up then I think the current system will work just fine. Maybe they can disable singleplayer and private matches if you leave a game as well. (assuming they aren’t already disabled)
If leaving matches continues to be a problem I think they should implement a 30 minute ban from matchmaking for leaving and not being present at the end of the match.