Posto la soluzione nel caso potesse servire:
il problema risiedeva nel fatto che il computo ritornava le dimensioni tenendo conto degli angoli espressi in radianti.
Dim TextToPixel As Single = gr.MeasureString(Text, Font).Width * 1.3
Dim AngleDegrees As Single = Angle / 180 * Math.PI
Dim H As Single = TextToPixel * Math.Abs(Math.Sin(AngleDegrees))
Dim W As Single = TextToPixel * Math.Abs(Math.Cos(AngleDegrees))
Dim QuietZone As Single = Font.Height * 1.6
Size = New Size(W + QuietZone, H + QuietZone)
convertendone la rappresentazione in gradi ho risolto il problema.
L'utilizzo dei valori assoluti mi consente di visualizzare correttamente il testo con qualunque valore.
E' possibile migliorare il controllo disegnando un rettangolo col Backcolor per simularne la rotazione completa.