If you're open to more unusual names, I want to suggest one of my favourite "dark" names for the first twin - Melinoë, which means "dark-minded". Ugh, it's so dramatic.
Anyway, I like the idea of
Ivy for the "good twin"...Ivy strikes me as a duplicitous name, someone who is not what they seem, and I'm already suspicious of this "Sweet and basically perfect" character!
That being said, I also like the pairing of
Lilith &
Lenora. That alliteration is satisfying.
There could also be a "sorrow and joy" theme with something like
Dolores &
Felicity.