Xbox Live Question

I was give a years sub for xbox live by a friend. The thing is I am using the old xbox and the code is for the xbox 360. SO I have in my possesion a code that cannot be used by me but the £40 it cost will be boosting the coffers of the almighty Microsoft. I cannot take the scratched card back to the retailer as it was given me as a gift (I have the code only).

So I call xbox help and ask them to cancel that code and provide me with a valid one for thier old system. They tell me that they cannot physically do this and my only recourse would be to sell the code to a friend and use that money towards buying another subscription. More money for them then.

I guess my question is why can’t they fix this and should they reall be advising me to sell on at a loss to buy another sub. I am not a retailer. Is this legally and morally sound?