I think it just depends. I was just there, and I had some cast members tell me I'd get one card no matter how many hats I bought, another told me it was one per hat, and the one we actually bought our hats from gave us each one (3) even though we only bought 2 hats.
I have also heard that some people will give them to you just for asking, and you don't always have to buy anything.