If they don't provide you with a mechanism with which to cancel, they can't charge you. To answer your question, no it's not legal. See an attorney (the initial consultation is usually free) and see if he or she can send them a letter threatening them with legal fees if the account isn't terminated immediately and the domain name canceled also immediately. The attorney will be glad to sue a going concern for a few bucks for you and a few thousand for himself. (And a 2nd year law student could mail the case in.)