Sí, diría que estrictamente hablando tu oración es correcta. Pero, en mi opinión, es difícil de entender. Buscaría alguna manera de salir de ese principio de «si no lo hubieras hecho» y tomar una decisión sobre el tiempo y el estado de ánimo. Por ejemplo:
- Si lo hicieras no quieres que hable tanto, ¿por qué no le dijiste?
- Si no querías que hablara tanto, ¿por qué no le dijiste?
- Si no habías querido que hablara tanto, ¿por qué no se lo habías dicho?
- Si no hubieras querido que hablara tanto, ¿por qué no le habías dicho?
(De nuevo, solo en mi opinión, estos también difieren en complejidad y no son igualmente fáciles de entender).