It isn't just a gift though, it's his time and on his birthday. Maybe he'd wanted to do something else?
You clearly wanted to do something nice for him, but for whatever reason it missed the mark.
Maybe he thought it was Marrakech. Maybe he wished the money you spent on this coukd have been saved towards that trip? Maybe he sees it as you using his birthday to do something you want and doesn't feel its about him at all. I think that would probably irritate you too.
You being taught to accept things that you're unhappy about doesn't mean that he should too. Add to that, he didn't say he was unhappy about anything. You made a point of asking him whether he was happy about it because you didn't like his body language to the point of arguing, that ain't great. He obviously tried to mask his feelings, just not well enough. Or do you think he was deliberately trying to make you feel bad?
You say he should have told you how he felt about it, but your last post indicates that he should have pretended to be grateful.
For whatever reason, the gift went wrong. You are perfectly entitled to feel disappointed about that. I think most people would, but you can't decide how he should have reacted to it.
I'm sorry that it didn't go down well, you must have been excited to tell him about it and now you feel flat.