So, why are the Jewish Holidays either early or late but never on time?

The answer is in the heavens. Our secular calendar is based on a solar year of 365 ¼ days. But how do you have a ¼ day? You don’t. You slowly gather those quarters and save them up until you have a whole (which happens, for those of you with a limited knowledge of 3rd grade math, every 4 years) and, voila, you have February 29th! Also known as a leap year.

The Jewish calendar also has a leap year. The only difference is that our calendar is based on a lunar year, and a 12 month lunar calendar is about 354 days. Stay with me now. Left unchecked, the shorter lunar calendar would start to drift around the seasons and eventually, Sukkot, our Fall harvest, would be in the Spring and Tu B’shevat the beginning of the Spring blossoms would occur in the Winter! Uch en vay!

In 4th century CE, Hillel II established a way to keep the solar seasons and the lunar calendar aligned. Over the course of a 19-year cycle an extra month (Adar I) is added 7 times. Wacky but effective. Just as the holidays get earlier and earlier, BAM, leap year, extra month, and before you know it the holidays are late!
Just can’t make us happy.