First of all: cool game, I liked it a lot, though I am not pretty good at it ;)
For your questions: It's really difficult to tell which approach will be the best one. I wouldn't go with a Cascade-Classifier in that case since I guess you'd a lot of mismatches then. So I'd start with a simpler approach:
- First locate each card in the image, maybe the following link helps you with that: http://opencv-code.com/tutorials/automatic-perspective-correction-for-quadrilateral-objects/
- Then you need to classify each detected card, here I would start with simple features: for each color channel r,g,b compute mean and standard deviation and compare them with all others (i.e. you need to compute those in advance for all the cards). Pick the one with the nearest Euclidian distance. If that won't give you good enough results, then add e.g. moment-based features which would correlate to the shapes you have.
Good luck!