I think this is a really important thing to realise, socially. People feel happy doing things for you. In a misguided attempt to be polite I used to turn down things people offered me even though I wanted them: drinks when I visited, lifts in a car, etc. Eventually I realised I was just making them more uncomfortable and that everyone wins if you accept.
That's a very important life lesson. Many people live unconsciously by a code of mutual obligation -- they will do something for you, motivated by feelings they would identify as generosity, expecting nothing immediately in return. It's rude to turn them down. They'll be hurt and feel rejected. At the same time you need to be aware that it's incumbent on you to return the favor eventually, in some form. I've seen a lot of, on the one hand, resentful feelings and on the other, baffled incomprehension, result when people who live by this code interact with people who don't.
This is culture-specific! I know a couple of cultures where it's polite to offer (without actual intention of following through), and the expectation is that the person being asked also declines - out of politeness. Think of it as the equivalent of the American "How are you?" scripted exchange.
I think India has (or had) a three level rules where the first 3 queries were just polite to show some kind of friendliness. After that your in honest/genuine interactions.
Unfortunately it's not quite that simple. The very same real world also contains offers that are customary given on the assumption that the other side says "thank you very much I will surely come back to you about this" as part of a politeness protocol but never even considers taking the offer seriously. "Please stay as long as you like" is how the last guests of a party thrown out.