Curiosity - You are so right! I have been prototyping with the Arduino for far too long. I had forgotten that the pic's portB were weak pull-ups. Guess that serves me right for not checking the datasheet again. So, I strike my comment that you could drop the 10K button pull-up resistors. Thanks for looking out Curiosity!
I also think it would be advantageous to go with a pic16f886 28-pin with an 8 MHz internal osc.
The design could also incorporate button multiplexing to reduce pin necessity or bring all buttons into a pin with and ADC with a resistor ladder. But, you have plenty of pins at your disposal, so it really doesn't matter.