Guarda che quel codice funziona solo per gli anni in cui il 1 gennaio è lunedì
È pure sbagliato, non è .NET e mi sa che non l'hai neanche provato
Il codice corretto su cui basarti (ovviamente modificando quello che ti serve) è
Dim D4 As DateTime
Dim TD As Integer
Dim FD As DateTime
Dim Y = 2024 ' Anno scelto
Dim NW As Integer = 31 ' Settimana selezioanta
D4 = Date.Parse("04/01/" + Y.ToString())
TD = -(D4.DayOfWeek - DayOfWeek.Monday) + (NW - 1) * 7
FD = D4.AddDays(TD)
MessageBox.Show(FD.ToString())