Why is "Damage not ignored" lower than expected?
When simulating an attack sequence, most steps are not capped: there is no limit to attacks, hits, wounds, unsaved wounds or calculated damage. This changes when you get to calculating models slain (you cannot slay more models than there are in the defending unit) and damage not ignored (you cannot ignore more damage than has been dealt and you cannot ignore damage if your defending unit is slain).
That last point is important: "you cannot ignore damage if your defending unit is slain". To reflect this, UnitCrunch stops attempting to ignore damage via a "Feel no pain" ability if the defender's models have all been slain (because UnitCrunch is effectively slow-rolling everything - just really fast). This often results in a lower average result for "Damage not ignored" than you might expect if you were to simply apply a FNP to the "Damage dealt" result (by multiplying damage dealt by the FNP expressed as a fraction). Performing the latter, more simplistic calculation would include "overkill" - FNP rolls are still being applied to points of dealt damage, despite the defender already being slain.