Nope - it happened during very late game of my playtrough - I didn't finished last era, when I reached mastery victory (end of time).
Calendar continued to work as intended for some turns and then it rolled over - I had to add more turns in last "date ticker" in gamespeedinfo xml to keep calendar functioning without rollover.
Code:
<GameSpeedInfo>
<Type>GAMESPEED_MARATHON</Type>
<Description>TXT_KEY_GAMESPEED_MARATHON</Description>
<Help>TXT_KEY_GAMESPEED_MARATHON_HELP</Help>
<iGrowthPercent>335</iGrowthPercent>
<iTrainPercent>300</iTrainPercent>
<iConstructPercent>335</iConstructPercent>
<iCreatePercent>335</iCreatePercent>
<iResearchPercent>1000</iResearchPercent>
<iBuildPercent>300</iBuildPercent>
<iImprovementPercent>335</iImprovementPercent>
<iGreatPeoplePercent>335</iGreatPeoplePercent>
<iAnarchyPercent>200</iAnarchyPercent>
<iBarbPercent>335</iBarbPercent>
<iFeatureProductionPercent>335</iFeatureProductionPercent>
<iUnitDiscoverPercent>335</iUnitDiscoverPercent>
<iUnitHurryPercent>335</iUnitHurryPercent>
<iUnitTradePercent>335</iUnitTradePercent>
<iUnitGreatWorkPercent>335</iUnitGreatWorkPercent>
<iGoldenAgePercent>200</iGoldenAgePercent><!-- 16 turns -->
<iHurryPercent>100</iHurryPercent>
<iHurryConscriptAngerPercent>335</iHurryConscriptAngerPercent>
<iInflationPercent>14</iInflationPercent>
<iInflationOffset>-260</iInflationOffset>
<iGoldModifier>150</iGoldModifier>
<iOccupationTurnsPopulationPercent>40</iOccupationTurnsPopulationPercent>
<iVictoryDelayPercent>335</iVictoryDelayPercent>
<iTraitGainPercent>1675</iTraitGainPercent>
<Percents>
<Percent>
<ID>ADAPT_DEFAULT</ID>
<iValue>335</iValue>
</Percent>
</Percents>
<GameTurnInfos>
<GameTurnInfo>
<iMonthIncrement>45000</iMonthIncrement>
<iTurnsPerIncrement>40</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>1704</iMonthIncrement>
<iTurnsPerIncrement>310</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>150</iMonthIncrement>
<iTurnsPerIncrement>320</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>144</iMonthIncrement>
<iTurnsPerIncrement>215</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>48</iMonthIncrement>
<iTurnsPerIncrement>175</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>24</iMonthIncrement>
<iTurnsPerIncrement>200</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>12</iMonthIncrement>
<iTurnsPerIncrement>200</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>3</iMonthIncrement>
<iTurnsPerIncrement>360</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iDayIncrement>75</iDayIncrement>
<iTurnsPerIncrement>288</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iDayIncrement>200</iDayIncrement>
<iTurnsPerIncrement>270</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>60</iMonthIncrement>
<iTurnsPerIncrement>260</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>84</iMonthIncrement>
<iTurnsPerIncrement>215</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>120</iMonthIncrement>
<iTurnsPerIncrement>200</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>180</iMonthIncrement>
<iTurnsPerIncrement>200</iTurnsPerIncrement>
</GameTurnInfo>
<GameTurnInfo>
<iMonthIncrement>12</iMonthIncrement>
<iTurnsPerIncrement>100</iTurnsPerIncrement> <----- there I changed it to <iTurnsPerIncrement>1000</iTurnsPerIncrement> or so to fix calendar rollover
</GameTurnInfo>
</GameTurnInfos>
</GameSpeedInfo>
Edit:
Rollover bug happens, when you play past time limit, then save game and load it.
Basically it seems like current date isn't saved, and game tries to calculate it based on your game speed and turn.
If it runs out of turns, then calendar resets every time you load game.