Tx Malleability: Why is the Script not included in the Signed Hash?
You are absolutely right.

The only reason why this is done, is because that is not how the consensus rules currently work. Changing it would require a hard fork, updating every node and eventually every wallet.