Hi CA,
On the assumption that you're looking for an exhaustive list of all possible explanations, I'll add a few more for consideration
- the "missing taste/aroma" are in fact present but the home cook loses the ability to discern it due to overloaded / dulled senses
- food hygiene practices at home are not as slack as restaurants (maybe a function of the scale of the cooking which is undertaken, meaning ingredients hang around at room temp for longer than when home cooking and containers get refilled without being properly washed out, etc)
- cooking technique is not correct
To expand On the last point, if you include the cooking of the base, there are many individual stages to cooking a curry and under or overcooking any one stage could have a significant effect on the outcome. It's not unreasonable to assume that a full time BIR chef repeating the same recipes each day becomes aware of exactly how far to boil the onions, fry the G&G, etc and the cumulative effect of getting all these stages right makes the difference between something special and something "not quite right"
Lastly, just for a laugh....
- there's a secret ingredient "they" are not telling us about
