Well, I'm designing my own keyboard controller, too. It's not a money saving move, but for fun, I suppose. Also, when you're known as a hardware guru, it's just wrong to use someone else's. And as well, naturally, they're all doing them wrong :-)
I sort of which I had found this forum earlier, maybe I could pick up some hints on what folks found useful, and not-so-useful, for controllers. I'm going the PS/2 route for both keyboard and mouse replacement on the one board, with a keyboard passthrough (or to link two controllers).
My basic controller supports two players. Each player gets a joystick and 8 buttons. Gaming buttons, naturally, are all non-blocking, but also all capable of generating an interrupt-on-change to the microcontroller (most of the large-count controllers do polling only). I'm also supporting two flipper buttons, a coin drop trigger, one trackball and one spinner (with hardware counters, so you don't get the aliasing problem that makes them seem to go backwards), 4 high current LEDs, and eight potentially blocking non-gaming buttons (for player 1/2 buttons, a pause button, maybe some other stuff). A shift is possible, but I haven't given it a great deal of consideration.
This one's small, 2.5" x 1.9" or so, 2-layer PCB.
Anyway, just wanted to add to the proposition that, even with other controllers on the market, there's room for more, or even a hobby or possibly Open Source controller (I haven't quite decided what to do with the design, once it's completed).