Hi Ernest,
You can see two problems from the supplied waveform.
1. Sometimes it fails to respond.
2. Sometimes it apparently responds to both edges/levels.
This is because you have select level sensitivity instead of edge (leave KBIMOD at 0)
If you want it to toggle at each edge you would have to flip the polarity in the ISR, but watch the pullup/downs.
You should also look at it with a faster timebase and the problem may be more apparent.