Where are you getting this stuff? McCarthy left the Saints the year before Haslet was fired and was replaced by Mike Sheppard. If McCarthy was Haslett's boy he sure had an odd way of showing it.
He didn't get rid of him for three years because he was running a very good offense. In 2002 the Saints led the NFC in scoring, with 49 touchdowns and 432 points. In 2003, the Saints scored 340 points—their eighth highest-scoring season ever. All of McCarthy's four years with the Saints rank in the team's top 10 years for offense at the time.
So maybe you didn't do your homework?