Use Northern Realms. It's hard to find enough of the high-value cards for the other factions to build a competitive deck around them till the end of the game, especially Monsters due to its horde mechanics.
The best way to play, I've found, is basically to follow this policy vs. the different decks you face.
vs. All
* Card advantage > all. Spies are your best friend.
* Decoy spy cards that your opponent plays, so that you get to play them later
* Don't play spy cards till final round against Scoria'tae and Niilfgaard because of mass healers
* Use healers to resurrect spies that are in your grave yard
* Try to maintain a card advantage throughout the game by strategically losing rounds
* When playing a leader who has the ability to draw a specific card from the deck, redraw that card when it's in your beginning hand
* Don't put every hero card you find in your deck. Triss for example isn't all that useful later on, but Yennefer, Geralt, and Ciri are <3
* Don't put every high-value card in your deck. Design the deck to be small to maximize your draws.
vs. Northern Realms
Northern Realms decks usually have a lot of siege cards, a couple of front liners, and poor ranged cards. Don't bother with fog, and for that matter don't play with any weather cards in the mirror. Use clear weather Foltest, switching to the destroy siege engines Foltest when you are able to get him later.
Strategy: because Northern Realms draws a card when they win, logically speaking you want to win in two rounds, rather than three. But at times the AI plays stupidly and plays a high value hero card in response to a small advantage on your side, in which case it's okay to pass the round. Otherwise, try to force the AI to pass the first round to maintain a card advantage throughout.
vs. Monsters
Monsters decks usually have a lot of frontliners, a couple of siege cards, and poor ranged cards. Again, don't bother with fog. Do, however, try to include 2x frost in your deck, and try to draw into one of them for when you need to neutralize the Monsters melee stack.
Due to the Monsters horde mechanic, at times you simply have to pass vs. them in order to up your shot at victory. In fact, it's normally a victory to force a Monsters deck to play a high-value horde card in the first round, because then it has none of those cards available later.
Don't try to pass strategically vs. a Monsters deck when they have only 1-2 high-value normal cards on board, because the Monsters special mechanic allows it to keep the card on board. Instead, try to pass strategically after forcing them to play a bunch of lower-value cards.
vs. Scorie'tae
Scorie'tae plays with a lot of ranged and melee cards, and practically no siege cards. As Northern Realms, I usually put one fog in my deck and use the Foltest who gets to search his deck for a fog and play it. Whether you include a frost card is up to you - ie up to whether you have a lot of frontline cards. In both cases, the strategy is to force the Scorie'tae into a card disadvantage by strategically losing the first round, because Scorie'tae has fewer spies.
Remember not to play spies vs. Scorie'tae till the last round, because their abundance of healers allows them to use your spies against you.
Remember also to include clear whether when you have a lot of siege cards in your deck, because Scorie'tae plays rain.
vs. Niilfgard
Niilfgard is tough, especially Sasha's end game deck, because of their abundance of spies - allowing them to gain a card advantage - and their abundance of healers - allowing them to gain an even greater card advantage when they revive your spies. They have a fairly balanced set of frontliners, ranged units, and siege units, so there's no targeting their unit set specifically. But given that you're Northern Realms and have poor ranged units, I'd include fog/fog drawing Foltest.
Against Niilfgard, you want to exploit the fact that their spy cards frequently have a lot of strength. For example, they have a 9 strength spy card. When they use those spy cards against you, try to use them to force extra cards from the Niilfgard player.
Lastly, do the Collect Cards quests. Not only do you get the rare cards from the people you beat, but you get extra cards, too, for completing the quest. For example, I think you get Ciri for beating the Velen collection quest, and Ciri is an incredible card that allows you to bulldoze through a lot of lesser decks. For the High Stakes tournament, know that you are going to be reloading. It's simply not practical to beat decks as stacked as Sasha's without a decent draw.