The main reason, at least IMO, that the baseball draft is such a crapshoot is the age of the players. These high school kids who get drafted haven't developed at all and have just dominated a bunch of scrubs their whole lives. When they actually get up against real competition, they might develop physically and fare pretty well, but most of the time they just fold. The NBA is going in this direction, as well (ahem, Darko). The guys they're drafting are so young there's really no way to tell whether or not they'll pan out in the long run.
I believe this was a big reason why Beane and Co. drafted mostly out of the college ranks. Of course, with so many rounds in the draft, teams like Atlanta have just been able to play the odds by drafting a ton of HS pitchers and having a few pan out.