Viper is a prime example of a carry that bottoms out early. He simply can't keep up with the damage out put of a whole lot of other carries. We found him great when we first played because no one knew how to deal with his poison damage and slow, but now I see him like once every 20-30 games if that.
Yeah a lot depends on team composition, how your supports manage, initiation ect. A lot of the time if you have early game carries you have to make sure the game is tied up around the 30 min mark. Either that or you have to ensure the enemies harder carries get no farm, which is why Nyx is such a wonderful hero as it's pretty much his job. Although our Nyx player doesn't like playing him as much any more because he claims it's to easy

Our list of carries tends to be:
1. Templar Assassin (one of our guys never plays any one else. Tends to be a mid although can dominate late game)
2. Sniper (good mid game, coupled with the right heroes can dominate late)
3. Lifestealer (mid-late)
4. Invoker (good all round, less late)
5. Bloodseeker (early - mid)
6. Nighstalker (early ganks)
7. Naga Siren (semi carry)
8. Kunkka (semi carry)
9. Brewmaster (semi carry)
10. Chaos Knight (semi/hard)
11. Doom (all round)
12. Skeleton King (mid)
13. Phantom Lancer (hard)
14. Phantom Assassin (hard)
15. Ursa (mid)
This usually means we have to have a game tied up around 30-40 min mark if the enemy team has a hard carry, unless we have our lifestealer, PL or a couple others. I often play the support role because my carries are Sniper, Kunkka and Brewmaster. None of them are particularly great at all out domination and can easily be countered but they have their roles. If I play a support I know I can baby sit PA, Templar, keep them off lifestealer and a bunch of other roles that are critical to winning mid-late.
The supports I play:
1. Jakiro (all round skill set, doesn't need items other than standard support)
2. Tidehunter (ulti is bad ass although bit of a one trick pony, never play with rubick)
3. Lich (can push lanes, ulti is useful although easily avoided, has constant mana so can spam skills early)
4. Omni knight (heals/nukes, provides immunity to damage)
5. Warlock (that ulti is orgasmic, heals/damage over time)
My current favourite is Jakiro. You can buy wards, courier, health items for hard carries and as long as you do your job you will always have enough still to buy your support items. His skill set is also great. The ice path pretty much secures team fights, especially if you hang back and use it after an enemy initiation to prevent them from following through. His liquid fire, coupled with dual breath is great for pushing lanes and macropyre usually ensures the enemy team bleeds health in a team fight. For some reason people often don't think to run out of that giant path of fire they are currently standing in. I also usually keep at least an even k/d with him. If your doing your job right you'll be at the back of the fight spamming ice path ect so I've had quite a few games where I haven't died and plenty where I've gotten kills because the slow burn from dual breath will finish off any runners.