I don't think companion approval or disapproval has anything to do with good vs. evil, but rather it is a metric of how they perceive your actions. I doubt they could act like a moral compass anyway, since they fall between evil and neutral themselves. Shadowheart will try to murder your character herself, depending on the choices made (and so does Lae'zel). It's a bit ironic, because you can order Astarion down and he will obey, no rolls involved, but fail to persuade Shadowheart and for the knife she goes.