Human nature. I also think a lot of people think that they can live the good life now and at some point, they'll return the favor to society... in the future... always.
Then there's the idea of "How can not buying a pair of shoes help someone in Sierra Leon or Niger?" The immediate response could be "give to cause X or cause Y". Then you can immediately respond "I don't trust cause X/Y, how do I know the money gets to the children?". I even hear some people respond "I don't give to them because they're mormons/christians/whatevers!" as if that really matters.
Then of course some people say that since they pay their taxes and that (in the US) our country is the largest provider of aid to africa, they are already helping children in africa. I believe under Bush, the amount of aid almost doubled to a couple billion a year so uhm... I suppose everyone has given about $8 a year. Not the greatest pair of shoes in my opinion.
I think the Haitian disaster was a good example of how people in the US view helping out people in poor countries. I remember reading an op-ed or an actual article about how someone didn't give any money at some donation booth or something for some reason (I don't remember the reason but it was a good one). The group that person was with and I believe the people running the donation booth got very belligerent with her complaining about how could she be so heartless. Guess what? She was a regular volunteer at a soup kitchen and did some other charitable work on a regular basis that I can't recall. Moral of the story? I think most Americans only care to be charitable when a celebrity or "everyone else" is being charitable. As if it is a social status thing.