My problem with Karkat<>Kanaya is that they’re too similar. They both have a compulsive need to solve other people’s problems while ignoring or suppressing their own, and they both have a tendency to convince themselves (and others!) that their destructive and/or self-destructive actions are helpful. For instance, Kanaya chops off the legs of a perceived romantic rival, without anesthetics and apparently without permission or prior warning, and is told that she’s crazy but in a good way; Karkat goes without sleep, apparently for weeks if not months, because he doesn’t trust anyone else to handle things if he’s unconscious for a few hours. And since they regard each other as generally sensible, Karkat and Kanaya don’t call each other out on the really batshit stuff they pull. They give each other the benefit of the doubt and assume their friend had a good reason for doing what they did.
This is a beautiful thing to have in a friendship. It is not a great dynamic for a moirallegiance.
On the other hand, Karkat and Gamzee have always looked out for each other, in their belligerent and spacy ways. Even before their moirallegiance became any kind of official, Karkat spent a significant amount of time and energy trying to keep Gamzee on track, and Gamzee was just as concerned with getting Karkat to unwind. They’re very much aware of each other’s failings, and they care deeply about each other because of that.
It’s not Kanaya that Karkat worries about when she’s out of his sight. It’s not Kanaya that Karkat is willing to physically restrain at the drop of a pin. It’s not Kanaya who Karkat went to for comfort when Sollux died (and I believe that for someone who has spent as much of his life hiding his blood color as Karkat has, crying on someone else is a huge act of trust) and it’s not Kanaya who made the effort to snap Karkat out of it when he was freaking the fuck out over having his entire understanding of the situation overturned.