Yes, that's what NoahBuddy said (you were... close!
): "Unfortunately, there also is no requirement by the JVM to call this method, so there is really no guarantee."
I guess that when you close the tab, the browser still have control, so quietly and politely advise the applet it is about to be closed.
When you close the browser, you send a system message, telling the application to close as fast as possible (might be the whole system which is shutting down), so perhaps the browser in a hurry saves context but hasn't the time to warn the applets. Pure speculation, and might not apply to all browsers on all systems!
It is even worse for JavaScript applications, most modern browsers abandoned this "page exiting" event, because it have been badly abused by rogue ads, shoving a popup window when closing the page (and another when closing the popup window, etc.)...
That's unfortunate because it might be so useful for Web applications (releasing a license, closing a database or permanent connection slot, etc.) to handle this event.