Anyone bitching about "how long it takes the money to get to Haiti" or how much of it reaches Haiti doesn't get nonprofits or fundraising. First, the American Red Cross doesn't wait for donations to arrive in their mailbox before they respond. The storm hits, the earthquake strikes, the Red Cross vans roll out. As much as anything else, your money is replacing the funds the Red Cross has already spent to prepare for the current disaster.
Second, admin costs are high and always will be. People are expensive, and it takes expensive campaigns to get cheap-ass Americans to come off their dough for charity.
The Red Cross is pretty respectable. There was some media hype over how much they paid Elizabeth Dole to be their president, but it was just that: hype. The Red Cross has $6 billion in revenues and 30,000 employees. Not only is it a large company, it's one of the largest non-profits in the world.