Here's why:
* "History" as a subject: When referring to the academic discipline, "history" is not capitalized.
* "History" as a descriptor: When used as an adjective to describe the teacher's subject area, "history" is still not capitalized.
Correct:
* I have a History teacher.
* She's the best History teacher I've ever had.
* My History teacher is very knowledgeable.
Incorrect:
* I have a History Teacher.
* She's the best History Teacher I've ever had.
* My History Teacher is very knowledgeable.