Because even if the ball isn't knocked loose that pass has 0 chance. It was below shoulder level heading straight into the back of players or swatted down. How about throwing a ball with a chance of being cleanly caught.
Sorry but football is so much more complicated than this.
If he doesn't throw it he gets sacked. You can't just magically throw a ball that "can be caught" on command when no one is open.
He threw it away (the right decision) and by rule it should have been an incomplete pass.
The refs decided to give Carolina points instead