It’s way more readable now but you still have issue with SubTime math. You introduce a possibility where you divide by zero when there are no substeps:
SubTime = DeltaSeconds / NumSubsteps;
and you also do unnecessary math as you already know that Subtime is FrameRate in all situations but when you have zero substeps, this is how I solved that on my fork:
SubTime = NumSubsteps ? FrameRate : 0.f;