If a user is booked on an event, the compliance report should show when they are booked to attend, but still show as red (overdue), if the event date passes and the user did not attend then the report defaults back to the original due date - this is what Elfy used to do when we were on that product - or even just take out the word "on" from the report as it's misleading with the wrong date in there.
I too am suffering from this software, you need to go back to the very last Event they attended for that subject, cancel the space, readd, mark off. Refresh the report app page and the very last cert expiry will appear. This software is so very bad with regard to Events communicating with report apps.