Hay varias formas de hacerlo. Usualmente, se borra el correo del servidor al descargarlo, así que si CheckMessages <> 0 entones, hay correo nuevo. En caso de no borrarlo, sería algo como:
Código Delphi
[-]
var
NewMessageCount: Integer;
begin
NewMessageCount := idPop3.CheckMessages;
if NewMessageCount <> LastMessageCount then
begin
ProcesarCorreoNuevo();
ShowMessage('hay correo nuevo!');
end;
LastMessage := NewMessageCount;