Blizzard is once again looking at all options to make the LFD work. But, just like in the past, they are not radical enough. Here I present to you what will be needed to balance the LFD roles.
1) Don't allow non-tanks to pull mobs. Don't allow misguided individuals to cause a bad mood.
2) Always have mobs attack the tank, no matter what. Don't inconvenience the tank.
3) Don't allow any group of mobs to be pulled that is not in line. The dungeons are linear for a reason. Remove aggro ranges.
4) Add a minimum dps that is sufficient to beat the dungeon. This minimum dps magically removes the hitpoints from mobs in combat. The question should never be whether a group successfully finishes a dungeon, but only how fast. The worst possible group should not need more than about 15 minutes to beat a dungeon; your customers live busy lifes. Always encourage time investment, never enforce it.
5) Don't allow the mobs to kill the tank just because the healer doesn't heal him. Instead, tanks should become immune to damage when at about 10% life. Don't allow anybody, including the healer, to affect the tank's mood in a negative way. Rather, encourage the healer to keep the tank's health over 50% by increasing his chance at acquiring minipets/titles/beta invites/etc.
6) Add lots of messages that automatically pop up when a player's performance drops below average. Tell the player that it is your mistake and how sorry you are. Make the customer's computer download a 'hotfix' next time he starts the game.
7) Develop an AI that praises each player every few minutes. Make it appear as if the other players are the source. (You might think that players are too smart for this kind of thing, and you're right. But it makes them happy, anyway.)
And a general advise: in case that your customer numbers drop further I suggest to give out more legendaries.
Much luck, Blizzard !! Only a few more steps and paradise awaits!