Why is WordPress Breaking Custom Elements with Hyphens Into Element and Attribute?

It’s not kses. The culprit is this:

force_balance_tags()

When I remove that, things work. I’m not sure why it’s breaking things, but I’ll look into the source later.