I think you are proposing automatic downvoting of non perfroming witnesses. This opens us up to attacks. If I am a witness I could skip the witness ahead of me. Making it look like they had missed a block.
The good news is that we really don't need this for 2.0. We can now modify the signing key of a witness in real time. So each individual witness should actually consist of a multitude of nodes which are set up in a chain, and if a block is missed production is moved from one node to another.