The missed schedule warning comes form those lines: https://github.com/WordPress/WordPress/blob/f884d7973b052c3efe0901bb136b9898ece8aa39/wp-admin/includes/class-wp-posts-list-table.php#L998,L999
It should be independent on any cron event, as the warning is being displayed only in case the current UTC time – post_date_gmt > 0 – there is no other condition (except for post having the future
status).
In order to debug the issue, check what value is saved in the database in the post_date_gmt
column of the post object with the false-positive warning. The value returned from PHP’s time()
should always be UTC so I don’t expect any issues there.
In case the post has correct GMT time, check whether some of installed plugins is not filtering the get_post_time
filter used in get_post_time function used here: https://github.com/WordPress/WordPress/blob/f884d7973b052c3efe0901bb136b9898ece8aa39/wp-admin/includes/class-wp-posts-list-table.php#L984,L986
Hope it helps.