I went through this with Bank of America. They do write the credit card number down and will charge the amount to the card if they later determine the account the check is drawn on has insufficient funds. This obviously defeats the whole point of cashing the check and they were very deceptive in continuously asking me for second "identification, like a credit card".
The solution is to show them a passport--it's the only thing that shuts them up.
So they're not imaginative enough to think that the guy writing rubber checks might also have maxed out his credit cards?