Were the deliverables fixed by the management or you were responsible for the estimate? If you are the one who consistently underestimates the time, maybe that's a legitimate point.
Ultimately, it is stupid if they'd favor giving a project to an intern over you despite your results/writing maintainable code etc. The company will pay for shit code accrued over time.