I would agree with the assessment that, while Shion definitely became more unlikable, her emotionally and mentally falling apart and clinging to the past with Kevin is realistic enough. Besides, the writers KNEW what they were doing. We all have seen cases of unintentionally bad written characters where the writer probably thought they were oh so amazing. But remember we actually get the chance to beat some sense into Shion in a mini-boss battle. The developers knew what was up.