There is no clean way to filter whole sidebar and such, but then that’s not what you really need.
The calendar widget (assuming you mean native one) uses get_calendar()
function, which passes result through get_calendar
filter.
It would be preferable to filter its queries, but from quick look at the code they seem highly messy and not easy to override.