pwm y vb.net

Primer error en tu receptor

 int led =(int)Serial.read() -48;

en realidad debe ser char o byte en lugar de int

byte led = Serial.read() -48;

empieza por ahi
Esta línea no hace nada

       analogWrite(LedPin,xxx); // No toma ningun valor-

xxx no tiene nada asignado
asi que sera un 0 en el pn 3 por siempre.
Comentala porque si envias desde la pc por VB.NET 1 2 o 3 solo quieres esos comandos por ahora.