En teoría te debería de funcionar:
The Session_OnEnd event occurs when a session is abandoned or times out. Of the server built-in objects, only the Application, Server, and Session objects are available.
mmmmmmm, solo para ir eliminando posibilidades: ¿tienes el global.asa en la raíz del sitio?, ¿haces redirecciones a otros sitios que teminen la sesion inesperadamente?
Tal vez
esta liga pueda ayudarnos: