Recents are correctly sorted based on the time you played them. If you played the same mission 10 times, there will be 10 entries in your list. However, they will all show the time of the “most recent flight”. This can cause this “out of order” behaviour (in your screenshot, if you scroll up, you’ll find another “Internal Deaconness” entry which is more recent than the one you’ve highlighted).
I think the cleanest way to solve this would be to hide all but the most recent ‘instance’ of a mission… will think a little bit more about this.