Non ne sono sicuro, ma non riesco a vedere che Ping() stia effettivamente lasciando passare le eccezioni. Restituisce solo vero o falso.
Ad esempio, il metodo Open() potrebbe effettivamente generare un'eccezione di tipo MySqlException, ma non Ping()