Just posting it here for anyone who might be seeing the same result:
In checking the PayPal account it showed the IPNs we did not receive as “retrying” and with the notification URL of
HTTP response code was 408
What is 408?
408 – Request timeout – The client did not produce a request within the time that the server was prepared to wait. The client may repeat the request without modifications at any later time.
Basically PayPal is trying to send the IPN but because the server is under heavy load it’s not accepting it so it’s putting it in the queue to try it later. I haven’t seen many of these but this is likely to happen on a shared hosting where the hosting company has put too many clients on one machine and the server is always under heavy load.