Cora ripped out Daniels heart in front of Regina., because she thinks that was the Best for her. Her mind is too twisted. She is capable of anything to get want she wants and then sa it was the Best for Regina.
“Sorry that I killed Henry, but he would never really love you as mother. He didn’t see that love him more then Emma and you have the right to move on. Trust me, everything will be OK. Rumple must do what we say and you will see. You will get another son or a little daughter, who really love you and alone you.”
^This and it goes back to who is really Regjna’s enemy in Cora’s mind…whoever stands in the way of her fully fulfilling her potential and since to Cora love is weakness….that would have to be Henry. In a twisted way Cora thinks she is being a good mother.