Apenas para salvar a resposta dos comentários:
O problema foi que o cron começou com um valor TZ; depois, o TZ foi alterado (afetando processos futuros), mas não foi até que o cron foi reiniciado com o novo TZ que os cron jobs funcionavam no tempo correto.