"No two species are identical. All must be judged on their own merits. Treating every species like one's own is racist. Even benign anthropomorphism." -Legion.
I don't think that quote really applies here, like at all. A) morality is relative, yes, and largely dependent on species societal constructs but B ) Shepard was the one making the choice, not judging a choice the geth made by human morals. And since Legion gave him exactly zero input on whether the geth consider a mass brainwashing of sorts to be ethical, or whether the geth even HAVE a sense of ethics (future scenes imply they do, albeit an alien one), Shepard had to make the decision within the framework of human morality. That last part is the important bit. Shepard had no input from the species of which the decision influenced on whether the species considered one choice more ethical than another, therefore Shepard has to make the choice using his own ethics or randomly pick because of moral relativism (which is illogical, if not idiotic).
Also, I have a hard time believing that anyone would have no moral misgivings about force rewriting the heretics en masse, unless they viewed the geth as mindless automatons that dont deserve any sort of rights provided to sapient beings. Which some people do, for some reason, as I've seen them argue their rather shaky positions on these boards several times.