InDesign's shortcut points to the menu item, and the menu item itself is caught by your event handler. So it has the same effect, whether you press the shortcut key or select "Close" from the File menu.
The close button, on the other hand, generates a different event and does not call the actual menu item Close. I imagine a similar thing happens when you force-quit InDesign through the task manager -- not *all* events are caught by ID on the scriptable level.
I think to be able to intercept the Window close button, you need to write an actual plugin. That, or instruct your users not to use the Close button under any circumstances.
Don't know if it's what you want, but the Application object has a "AFTER_CLOSE" event:
AFTER_CLOSE string readonly Dispatched after a Document is closed. This event bubbles. This event is not cancelable. (default: afterClose)
This is a real problem. Maybe some knows of a plug-in that just disables the close button. That would be a great help. Telling the user not to use the close button is not enough.