The reason for this is that it actually saves disney money by doing this way and also keeps them from having to meet credit card security rules.Unless you're staying on site and they have your credit card info when you check in.
By using the card you checked in with and allowed linked spending you are essentially saying that you trust them and their charges. Then every time you pay by linked account it is just charging to your room bill which is then cashed in at the end of your stay. This means disney doesn't get charged a transaction fee for each payment and is instead only charged the one. On a small scale it isn't that huge of a deal but I imagine in the big picture it probably saves them at the very least thousands of dollars a month.