I have T-Mobile GSM service via MMO (Ting), and I absolutely never receive VV until I get a reasonable cell tower signal (at least 1 bar trying to flash to 2 bars); I have WiFi calling enabled, which works fine, but VV seems to require an actual LTE or 4G connection (IOW, even if I have 4 bars, if it doesn’t also show a data connection [4G/LTE] VV will not arrive (nor can I get email, internet services, etc.).
I might go days without a decent enough signal at my house, or I might leave it in Airplane Mode (WiFi ON), and do not get any VV until I wander into a signal; then I may suddenly see messages that are days and days old.
Thankfully, nearly every message in the TM VM mailbox is junk; I don’t actually use that phone number or its VM; I use Google Voice, so (nearly) all my VM (that I care about) arrives via GV App/Web/Email/SMS notifications.
(Occasionally there is a slight burp when I have call forwarding enabled that the T-Mobile VM hijacks what should be recorded by GV, but it’s rare; and generally those important messages are detected within minutes, at most, because I’m out and about getting actual cell service, so I see the badge/notification and hear the message tone.)
I doubt this is something Apple will fix via iOS; I believe this is simply the price of VV (at least on TM): it requires a cell tower data connection, and doesn’t work over WiFi.