я не нашел собственный метод.
вот мой обходной путь:
поместите компонент mat-calendar в div с условием, что массив выделенных дат не является неопределенным
<mat-card *ngIf="datesToHighlight">
<mat-calendar [dateClass]="dateClass()" [selected]="selectedDate" (selectedChange)="onSelect($event)"></mat-calendar>
</mat-card>
когда вы хотите обновить mat-calendar, установите для массива значение null, а затем заполните его обновленными данными
this.datesToHighlight = null;
this.datesToHighlight = getMyNewArray();
Таким образом, компонент снова загрузится с новым массивом.