There are strict rules about credit card charges, delayed orders, etc. The bottom line is that they can't charge your card until they ship, and if they do they run the risk of running afoul of the rules. Simply (in writing) cancel the order and advise them to issue a refund. If they fail to do so, then do a charge back. The merchant is always 100% responsible, and will lose on a chargeback.