PR inconsistent with actual lap times

Hi all.  Forerunner 255, using Garmin Connect on Android.

I always log the time for the first 5k of any run.  I typically run 5-8k, sometimes more.

I can calculate the 5k time either by adding the individual times for the first 5 x 1k laps, or by taking the total time for the run and subtracting the times for the laps after 5k.

These 2 methods produce the same time, and I include all the 1/10 seconds.

The issue is when I achieve a 5k PR.  This has happened a few times, notably today.

Garmin tells me I set a new PR of 00:28:01.

Calculating it by totalling the first 5 laps, or by subtracting the 6th lap, produces 00:28:03 .

It's only a couple of seconds, but when it's a PR it feels unsatisfactory.

Can anyone explain, please?

Thanks