In my playthrough in these fights:

In Isobel's fight the attacker emphasizes before the fight that they need her alive, creating an expectation for them to be gentle with her. Then they proceed to throw all their firepower on killing her.
I too thought it was scripted too till I was given the message that Karlach quest failed due to Dammon's death.

In Raphael's fight, I had to save-reload 5-6 times whenever a soul charge was used on Hope - it does 20d6~70 fire damage, followed by a 6d6~21 extra proc immediately after before you get your turn, this killed Hope from full 93 hp. Eventually Raphael happened to target my character, who is fire resistant instead and I could finish the fight with her alive.
Just now I'm thinking maybe I could have given Hope fire resistance somehow (not sure if the UI lets you have her drink a potion, else having someone concentrate on protection from energy seems too expensive, but also possible)

While these particular encounters could be retuned, as well as a few other problematic cases, the problem with NPC dying -> reload or 'fail the whole quest' is much more persistent and indeed happened to me with
Mayrina, Jahera, Halsin
and more. The game should be more forgiving to allow honest (no savescum) successful playthoughs.