Ese codigo que mostraste tiene un error ya que haces la consulta 2 veces innecesariamente.
Dejando eso de lado, se supone que se guarde el correo en una SESSION pero nunca recoges este valor en la consulta.
Código PHP:
$query = mysql_query("SELECT username,password,email FROM usuarios WHERE username = '$username'") or die(mysql_error());
$row = mysql_fetch_array($query);
$_SESSION["s_username"] = $row['username'];
$_SESSION["s_email"] = $row['email'];
$_SESSION["logeado"] = "SI";
Ya con ese cambio hecho en tu codigo, haz esto ahora donde quieres mostrar el Gravatar:
Código PHP:
<?php
$email = $_SESSION['s_email'];
$default = "http://www.somewhere.com/homestar.jpg";
$size = 80;
$grav_url = "http://www.gravatar.com/avatar/" . md5( strtolower( trim( $email ) ) ) . "?d=" . urlencode( $default ) . "&s=" . $size; ?>
Nota: Se supone que ya tienes que tener el session_start() en la pagina que muestra el avatar y toda la demas info