Hola Ecfisa. Acabo de probarlo y me ha funcionado correctamente. Es como tú dices salvo algunos detallitos. Efectivamente tenía que usar un query auxiliar (o temporal), pero en mi versión de builder no tengo elementos IBX, así que lo hice directamente con un query auxiliar y un elemento UpdateSql asociado a dicho query auxiliar para realizar la consulta con DELETE, ya que no lo puedo hacer con el query. Me explico: Haciendo QueryTemp->SQL->Add("DELETE FROM Mi Tabla WHERE...") obtengo un error que dice "Invalid Token Delete...". Así que lo que hice fue lo siguiente:
1)Asociar un elemento UpdateSQL a mi Query auxiliar (o temporal)
2)UpdateSql->DeleteSQL->Text="DELETE FROM Mi Tabla WHERE...";
3)QueryTemp->Delete();
4)QueryTemp->Open(); (o QueryTemp->ExecSQL()

5)Como tu bien dices, para ver reflejado el cambio en el DBGrid: Query1->Close();
Query1->Open();
Y ha funcionado perfectamente...Problema solucionado. Así que muchísimas gracias por tu ayuda, llevaba comiéndome la cabeza bastante tiempo... y enhorabuena por este gran foro.
Un saludo.