Descobri que a entrada de rastreio URL_CACHE_ACCESS_END ocorre antes de o processo de página do ASP.NET ser concluído e HTTPSYS_CACHEABLE acontece depois de concluído. Eu descobri isso adicionando um sono de 5 segundos no meu código e, em seguida, comparando os traços com e sem o sono. O atraso do sono aparece no registro de data e hora HTTPSYS_CACHEABLE.
Portanto, isso não é um problema do IIS ou do ASP.NET. No meu caso, um de nossos desenvolvedores alterou algum código que fazia com que um loop longo fosse executado em certos casos, que nossos usuários estavam acionando.