Firstly, instead of purchasing a pre-paid Mastercard, you could have used a feature that many banks have nowadays. MBNA calls it ShopSafe, Discover, AmEx and Citibank have it too. You can log in to your online banking account, request a one-time credit card number, giving them an expiration date and a maximum of total charges.
Also, as a software engineer, I can imagine a system that would do everything what you did automatically. Setting up an account with iTunes, making a purchase and then either allowing you to use it or handing over the account to someone else can be all programmed into a cute desktop application. Let’s call it AppleZaa. šŸ™‚