metti il metodo fill dentro un try catch e fai una stampa del messaggio....
può essere come dici tu, e cioè che la tabella sia vuota.
fai anche quest'altra prova:
prima del fill inserisci questa istruzione...
da.FillSchema(EmailRef, SchemaType.Source);