I believe that the complexity we see in characters and the bad traits we dislike are ment to be this way. That is what makes the characters so deep, because in real life no one is perfect. There should be a conflict, it should be emotional and confusing, so that later on we could witness the journey and path they have went through. Of course if you still dislike a character even in the end of the story, thats totally fine.
