I understand it's confusing, but it's right for now. That's the way the tw was.
The basic question is this: should you be able to switch freely in between horn types? Or should you have to hack a horn off before putting the new one on?
You can kind of see how the code could be moved in either direction very easily, but at the moment, you have to remove the old horn.
If you really feel up for it you could snip all the little gates for particular horn types. You're right that they're doing nothing right now. But I didn't feel it was worth dropping them in case somebody wanted to change the way horn surgery worked.
Still not liking checks that are always true. Less bad than ones that are always false though I guess.
Not sure what's better either, though generally I like it more if you can do a single click instead of multiple. (eg. replace instead of remove and attach)
It's not just about clicks, it's about the costs and health penalties. Since it started to get into game balance, I left it alone for somebody else to figure out.