El problema está en que de base, el color se lo estás dando a los campos individualmente, un color individual para los <th> y <td> dentro del <tr>.
Entonces cuando cambias el color solo del <tr>, no se cambian los otro.
Esto lo solucionarías con algo como esto:
Código CSS:
Ver originaltable tr:hover th{background-color:#99FFCC}
table tr:hover td{background-color:#99FFCC}
Poner esas dos lineas en la parte :hover del CSS, para que tenga en cuenta todo y ya está.
Un saludo.