Oh, you get the correct result, but not the wanted result
You want the waveform to be inverted, but not the duty cycle to be complemented.
You cannot use this: PORTB = ~CCP1 because the result on PORTB is parallel. The easiest way is to use a hardware inverter at the output of CCP1.
Or, is the program running anything else? If not then you can update the duty cycle of CCP1 in the timer 2 ISR. In the main, poll RC2 (CCP1) and invert this pin to any output pin. Or anyone has better solution?