Makes sense, except from the programming point of view
You would have to integrate a couple more variants though, like the angle sector where the target is hit (few chances of busting a glass window by shooting at the armored casing), the WHS of the attacking weapon, plus some others you cannot implement in the game I guess, like relative sensor-to-armor target surface, sensor survivability...
In all fairness, you could also have fire control computers disabled by non-penetrating shots.
As you said, the solution would be to have one "minimal" FC rating and one "best condition", and hover between both depending on damage. And even without the bother of adding at least one parameter to
each and every unit in the game, the whole routine is practically sure to be hell to program.