A parte che dicevo di usare il metodo charAt di String...

codice:
primaL = primaL.substring(0,1);
primaLT = new String(primaL);
ultimaL = ultimaL.substring(7,8);
ultimaLT = new String(ultimaL);
Cosa sono primaLT ed ultimaLT, ma soprattutto a che servono?

Inoltre, nota che hai usato il metodo substring sulle variabili primaL e ultimaL che invece dovrebbero contenere il risultato.

E infine, hai usato (7,8)... e se il nome fosse stato piu' lungo o piu' corto?

Ultima cosa... Se proprio vuoi usare StringBuffer:

codice:
        parolaFinale.deleteCharAt(1);
        parolaFinale.deleteCharAt(8);
Il carattere in posizione '1' e' il secondo. Per eliminare il primo devi usare deleteCharAt(0).
Quando cancelli il secondo carattere, hai calcolato che la stringa ora e' piu' corta di un carattere?

Buon lavoro.