CF, you're exactly right, it doesn't. However, it *does* have to do a lot with being bad. Allow me to explain using the Pittsburgh Pirates as an example.
Let's start in 1999 with some guy named Jose Guillen. Great outfielder, will be remembered for his rocket of an arm in right field. The Pirates traded him away for two players, one who didn't play a game in the majors and another that played one season before retiring, hitting just .202.
Jump to 2001 and the Pirates trade Jason Schmidt away to the Giants for two players, both with great baseball names but neither with baseball talent. Schmidt goes on to play All-Star baseball with the Giants and Dodgers while his compensation brings in little return.
I can go on through Aramis Ramirez, Jason Kendall, Xavier Nady, Ian Snell, Jack Wilson, Freddy Sanchez, Nyjer Morgan, Adam LaRoche, and plenty of others, but I'll stop and say the name you know: Jason Bay. Craig Hansen threw 99 MPH but couldn't hit a 10x10 poster from 60 feet 6 inches away. Brandon Moss is starting for the A's as a stop-gap solution at first base while Michael Taylor grows up. In the mean time, Jason Bay put up two solid years in Boston playing as an All-Star outfielder and, despite a serious hitting slump, he's still dangerous.
The Mets have the same issue, though not as exaggerated. David Wright is probably going to be with the Mets for his entire career. Ike Davis can hit the ball across the river into Jersey. RA Dickey threw one of the dirtiest pitches in MLB history with them last year, but the Mets can't afford him and are forced to trade him to the team that practically bought another club with the same issue (and another called TSS: They Suck Syndrome) - the Marlins. Matt Harvey is growing into a great pitcher now and I wonder if the Mets will hold onto him as he gets into his five or six years of dominance in the majors. They have solid prospects from the Dickey trade that may or may not stick with the Mets once they make a name for themselves because they can't get paid.
I think it's clear: money has nothing to do with being good. Look at the Angels, Blue Jays, Cubs, Dodgers, Phillies and others to show that, even when next to the Red Sox, Yankees, Reds, Cardinals, Braves, and Rangers, paying players a ton of money doesn't mean a thing. The Rays were low budget (and still are) and are pulling it off. However, you look at the Astros, Pirates, Padres, Mariners, and other teams that are year after year treading in the basement of their divisions and you'll find something in common: they don't have enough money to sustain a good team and they don't have enough extra money outside the majors to put together a good farm system. A salary cap of, say, $130,000,000 (for example) activated in ten years but announced now could make baseball competitive no matter how big the market is.