it's a new occurrence for me
It may be a new occurrence for you, but it's also entirely possible that you just haven't come across discrepancies significant enough that casual inspection would show the divergence between what the viewer displayed and what the actual simulation's results are, especially since the battle viewer counts fighter HP while the strategic level fleet summary does not and so permanent fleet HP lost according to the battle viewer can be rather unclear. I'm rather doubtful that you (or anyone else) has ever consistently bothered to watch the battle viewer play out and determined the final HP of each ship involved and compared it to the HP of each ship that actually survived the fight, and yet that is the only way to be as close to certain as possible that the simulation used for the battle viewer played out identically to the simulation used to determine the actual outcome of the battle unless the developers have a way to put all the relevant data for each timestep in both battle simulations into files for direct comparison; I know that on the rare occasion that I watch the battles in the battle viewer I only rarely bother comparing even the remaining total fleet HP reported within the battle viewer to the total HP of the surviving fleet and certainly wouldn't check the HP of each ship, and probably not even of just a chosen favorite ship or two, as seen at the end of the simulation shown in the viewer against the HP that each ship in the fleet actually has at the end of an engagement.
Only gross discrepancies, such as the fleet losing when the viewer said it won or the wrong set of ships surviving (e.g. the full fleet survives even though a few were clearly destroyed in the simulation shown in the battle viewer, or, if you're more attentive, the ships which survive in the battle viewer and the ships which actually survive the battle are not the same) or differences in end-of-battle HP totals which cannot be ascribed to fighter HP being counted by the battle viewer and not counted by the strategic level summary, are likely to be noticed, but that doesn't mean the small errors produced by the same cause are not there.
This is not a calculation to viewer issue
Actually, it is a calculation to viewer issue; the calculations that naselus refers to are not the calculations which the game uses to determine victory likelihood but rather the calculations that the game uses to determine the actual results of the battle. For a very long time in GCIII, possibly ever since the battle viewer was added to the game, there have been discrepancies between what the viewer depicts as occurring within a battle and what the actual results of the battle are.
I suspect that what happens is that every time that a battle happens, the game runs a simulation that produces the actual results shown and saves the final state of each ship involved in the battle, presumably along with a seed for the RNG that the game uses for the combat simulation, but it does not save the data for how the battle unfolds. Then, when the player tells the game that they'd like to watch the battle in the battle viewer, the game has to run the simulation again, using the not-yet-cleared information on the initial conditions for the battle and the seed which was used for the simulation that produces the actual results. If the seed is in some way incomplete, if there is a bug in the RNG, if the RNG used is not fully deterministic (at least not with only the information contained within the seed that the game stores), or if the rules used for the two simulations are for whatever reason not the same, then the results depicted by the viewer and the actual results of the engagement need not be the same, or even similar. And for whatever it's worth, there are indications that the rules used to determine how things are shown in the battle viewer are not the same as the rules used for the simulation that determines how the engagement unfolds within the battle viewer.