It isn't super clear what you're looking for. Lots of modern games have collectible elements, e.g. the numerous gun unlocks in Call of Duty, ship variants in FTL etc. The collectable mechanic is used a lot because it tends to keep people coming back for more! However these games lack any kind of 'deck building' component.
I'm always quick to recommend Spectromancer, a game with creatures, spells and moment to moment gameplay a bit like a CCG - but no deck of cards and no deck building (at least in a standard duel).
Also feel free to ignore this self-promotion, but I love CCGs so much I developed my own, The Trouble With Robots. It does have conventional cards and decks, but is a single player game where you fight waves of enemies rather than participate in online duels. It also has real time elements and ditches the mana system for something simpler.
I've thought about this a lot and I think Minecraft has three important ingredients:
(1) You make your own story. You're free to decide what to do, where and when. The procedural world really helps to make this work out.
(2) You become attached to the stuff you make. It's easy to start building, but what you make is unique to you. This fosters a sense of attachment and pride in your work.
(3) Working towards an accomplishment. Once you've got the hang of the basics you can plan and build something impressive, and this is the sort of 'satisfying hard work' most people wish real life was about.
I don't think the specifics of the crafting system, mobs etc are important - these are just incidental details.
Also msg isn't initialized, and it isn't guaranteed to be set by PeekMessage, so it could happen that msg.message == WM_QUIT by coincidence (in practice you will almost certainly have a WM_CREATE message or some such on the first loop iteration which renders this bug somewhat theoretical).