Problema em ASP.NET MVC Session.IsNewSession com o Google Chrome

No momento, estou trabalhando em uma parte da lógica da Sessão expirada para o meu projeto ASP.NET 3.5 MVC 2 para desconectar um usuário e redirecioná-lo para a ação de Logon do AccountControlle

Tenho o seguinte atributo em todas as minhas ações que se preocupam com o estado da sessão, e esse trecho de código funciona no IE 8, mas não no Firefox 4 ou no Google Chrome 10. O sintoma é quando tento navegar para uma exibição representada por uma ação com meu atributo [SessionExpireFilter], a propriedade ctx.Session.IsNewSession no código abaixo é avaliada como "true" toda vez, mesmo se eu tiver apenas alguns segundos na minha sessão de 30 minuto

public class SessionExpireFilterAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        HttpContext ctx = HttpContext.Current;

        // check if session is supported 
        if (ctx.Session != null && ctx.Session.IsNewSession)
        {
            // If it says it is a new session, but an existing cookie exists, then it must 
            // have timed out 
            string sessionCookie = ctx.Request.Headers["Cookie"];
            if ((null != sessionCookie) && (sessionCookie.IndexOf("ASP.NET_SessionId") >= 0))
            {
                FormsAuthentication.SignOut();
                ctx.Response.Redirect("~/Account/LogOn");
            }
        }

        base.OnActionExecuting(filterContext);
    }
} 

Existe alguma maneira de descobrir por que o Chrome e o Firefox estão se comportando dessa maneira, mas o IE não está? Desde já, obrigado

EDIT: Isso não está funcionando no FF como eu acreditava originalmente. Estou sendo direcionado para minha ação de Logon imediatamente após efetuar login e tentando acessar uma ação com meu atributo SessionExpireFilter.

questionAnswers(2)

yourAnswerToTheQuestion