Решение:
А разница в том, что Response.Redirect отправляет ответ браузеру, а Server.Transfer просто начинает обрабатывать другую страницу в рамках того же запроса.
Примечание: если что-то передаешь в куки – то надо вызывать так:
Response.Redirect("~/customer/profile.aspx", false); FormsAuthentication.SetAuthCookie(UserName.Text, persist); // после response
Иначе будет ошибка