When setting pin as input it getts pulled high, why?
Disable the internal pull-up resistor of your input pin. In AVR it's usually done by configuring the pin as input and setting it to 0. (I don't know much about the PIC but it's done this way in Atmel's AVR).
also if your push-button is connected to VCC, you should put a pull-down resistor on the input pin, so when the switch is off, the input will be connected to GND and the value will be zore.

if you are confused by the thing's i've said, just put a 1Kohm resistor from your input pin to ground. It should solve your problem! (it just gonna use more power, but it's not much!) :-)

also here is a good refference on pin configurations for PIC (with lot's of pictures!):
http://www.mikroe.com/chapters/view/4/chapter-3-i-o-ports/