Veigar isnt really an anti mage, hes an anti carry. There ar many players who decide that if they cant take their lane, they gotta bich out and steal other lane kills, so they get fed like that. Veigar is the answer to fixing that problem. for example:
cant outpush you, so she goes bot, gets a double, on her way back, she finds your jg, gets the kill, Goes B and now shes "fed". MOST people dont know how to fight a fed ahri, so its simple, get a rabadons, and focus Ahri with your ult and CC, shut her down, make her not be able to be usefull in teamfights because after you 2 hit her, shes either dead or with < 100 HP. NO AHRI in their right mind will return to a fight with that much health, so you just made it into a 4v5, and since shes Aoe, and so are you, shes GONNA have to B, or its a kill for your team.
The same with
hes trickier, but also very easy. get a zhonyas and BAIT his jump, that way he has no escape, and you can combo right in his face ( no way to dodge unless he flashes, and if he flashes, hes not gonna get close until his ult is back, so you have the advantage) also take advantage on teamfights with him, stay close to whoever he ults, but not close enough to get hit yourself, then make them stand on TOP of your stun, so if he wantts the kill, he HAS to get stuned, or he wasted his ult.
Hes the best way to balance out fed mages and assassins, that way you can keep your team "safe".