I think your formula has a flaw. It should include not only the amount of government aid, but should also include the amount of aid donated by private citizens, churches, charitable organizations and corporations, which in the case of the USA, would amount to several hundred million dollars more.
Even if you did factor in just the amount of government aid, you should not use GDP as the divisor - you should use the amount of GDP that is controlled by the government. The governments of some countries consume 60% of their GDP through high taxation, which of course gives them more of the nation's GDP to be "generous" with.
You are absolutely right. My main point was that it's ridiculous to use the absolute amount of donations as a basis for judging if one country or another is 'more generous', etc., than another. It isn't hard to come up with something a little more reasonable, if not perfect. As another poster indicated, there are many other factors to consider. In fact, I'd say there are enough factors to consider that to be 100 percent accurate as far as judging how much many each country 'should' give (which in itself relies on personal values) is pretty much impossible.