The idea with a good single sign on is that there are fewer places for your credentials to be compromised. There are three reasons to use different passwords, first, because each unique place that stores your password (hopefully hashed) is another place it could get compromised. Second, because if your password is compromised, any other account using it would need to be updated and that is hard to do. Third because if your password is compromised, they could access multiple accounts if they were shared.
SSO is a great advantage for the first two. A good SSO system should only store your account credentials in one location (which is hopefully far more fortified). All authentication is done against this one store. If your account is compromised, rather than having many places to update, only one password has to be changed and one account locked down.
It doesn't particularly address the third concern, but it makes compromise less likely in the first place. Additionally, depending on the account, different passwords don't necessarily act as much of a barrier. There are plenty of reported examples of attackers using one compromised account to chain from account to account until they can get to the actual account they want. (For example, if they can access your e-mail account, then they can use password resets.) A good system of reporting compromises and allowing for the account to be locked down can make a decent help towards mitigating the risk though when suspicious activity is detected.
The argument that completely unique credentials may be more secure than a good SSO setup is possibly valid, but in the real world, most people reuse credentials. SSO mitigates much of the risk of this behavior while still allowing the convenience people want.