Deve ser a versão do flutter mas aparentemente aqui o HttpClientWithInterceptor captura o TimeoutException e retorna um HttpInterceptorException com a mensagem de TimeoutException.
Imagino que o HttpInterceptorException deve retornar pra outras exceptions fora timeout também.
Esse caso vai acabar caindo nas mensagens genéricas ou tem outra maneira de capturar essa exception específica?
Edit: Agora que eu vi que essa pergunta já foi respondida. Aparentemente uma forma de contornar é voltar a usar o timeout no post ao invés de definir no client.