Incredibilmente dopo 2 giorni ho trovato il problema... ovviamente subito dopo che inserito il post nel forum:
si tratta di un problema legato a Vista e alle sue impostazioni del GUI.

E' necessario quindi visualizzare il controllo con il "vecchio stile". Per farlo utilizziamo le API:


codice:
Private Declare Function DeactivateWindowTheme Lib "uxtheme" Alias "SetWindowTheme" ( _
    ByVal hWnd As IntPtr, _
    Optional ByVal pszSubAppName As String = "", _
    Optional ByVal pszSubIdList As String = "") _
    As Integer

Esempio:

codice:
Dim d1 As Date = Date.Now.AddDays(-1)
Dim d2 As Date = d1.AddDays(2)
Me.MonthCalendar1.BoldedDates = New Date() {d1, d2}
Me.MonthCalendar1.UpdateBoldedDates()
DeactivateWindowTheme(Me.MonthCalendar1.Handle)
Bisogna chiamare la funzione DeactivateWindowTheme dopo ogni Update del controllo MonthCalendar.

Spero vi sia utile

Ciao ciao