SLG is not a flawed stat. I greatly prefer it to batting average, which is about as flawed as it gets.
BA tells you that basically every hitter in MLB gets a hit in 20 to 30% of their at-bats. THat's not exacty a wide range despite how fans like to treat it. Get a hit 28% of the time, you need to be starting. Get a hit 24% of the time? Go to the bench.
SLG is the offensive stat that does allow for seperation, SLG can run a much bigger range, with most of the league falling between .300 to .600. It does favor XBH hitters, but then isn't this another advantage over BA, where a single and a home run are equal?