But this isn't something that is denied, although some would deny the importance of defeating an under strength Sri Lanka in a 3 match series. Mind you, some hopeless batsmen have scored match winning runs and some terrible bowlers have taken big wickets.
(Most) People accept that Shahid Afridi can be impressive and he can win a match. However, he puts on a show only once in about 7 innings; half as often as Sachin Tendulkar or Ricky Ponting and many others. In 68 ODI series, he's managed to make two 50+ innings in a series just 5 times. Compare that with Ponting and Tendulkar, the corresponding figures are ridiculous. For a little over 20% more runs per hundred balls overall, he is half as consistent.
What is the key difference between Shahid Afridi and most batsmen is that he is given a license to play like he does. Has he ever been under pressure to perform? Not really. He has been dropped from time to time, but he is never far from plans. Most selectors wouldn't put up with his record and he is very fortunate to have such a situation.
Does he win matches? Of course. Does he win tournaments? Of course not.