Perhaps main problem - T2PR = 0x00
If you want T2 to be an 8bit counter you need to set T2PR=0xff (the reset value).
I've never tried setting it to 0, but I think it won't count at all, so PWM can't work.
Get rid of this stuff: The first should never be included and the rest are unused in this code.
Your config bits are incomplete. You should have all of them in here, especially RSTOSC. Don't rely on defaults because you have to go back to the datasheet to see what they are.
OSCON2 is read only. You can't write to it. You are setting OSCON1 for a divider of 8. If your external crystal is 8MHz as in the comments, then Fosc = 8 * 4 / 8 = 4MHz. In this case set _XTAL_FREQ to 4000000 for accurate delay macros.
Why are you setting RC2 as both the CCP2 input and the CCP1 output? (CCP2PPS = 0x11/RC2PPS=0x05)
Why is there a while(1) loop at the end of PWMInit() ?
Why is PWMInit() inside the main while loop?
Why are you clearing the same bit three times? T2ON = 0; T2CONbits.ON = 0; T2CONbits.TMR2ON = 0;
and setting the same bit four times? T2CON = 0x80; T2ON = 1; T2CONbits.ON = 1; T2CONbits.TMR2ON = 1;