You are missing a <periodvarcalc> tag in your module db.xml.
For example, in the gregorian calendar you have both a lunardaycalc tag so that the days of the week line up correctly on the calendar (ie, if Feb 28 is a Wed, then Mar 1 is a Thur). And it has a periodvarcalc to add days to Feb when the conditions are correct.
Code:
<lunardaycalc type="string">MKgregorian</lunardaycalc>
<lunarweek>
<day1 type="string">Sunday</day1>
<day2 type="string">Monday</day2>
<day3 type="string">Tuesday</day3>
<day4 type="string">Wednesday</day4>
<day5 type="string">Thursday</day5>
<day6 type="string">Friday</day6>
<day7 type="string">Saturday</day7>
</lunarweek>
<periodvarcalc type="string">MKgregorian</periodvarcalc>
Your code only has a lunardaycalc, which is never being used/called because you are not registering a lunar day handler. you are registering a monthvar handler which should be defined in the periodvarcalc tag. I recommend you rename the lunardaycalc tag to periodvarcalc and it should start adding the leap years according to your code.