Con redes neuronales se podría hacer... aunque tu programa primero debería hacer una pequeña captura de tu voz, algo así como un test de prueba para entrenar la red neuronal.
Otra idea sencilla seria usando la transformada de fourier pero tendrías que tener una voz perfecta y siempre decir DO con la misma frecuencia para que la detecte, algo que veo imposible, a menos que tengas una excelente afinación o solfeo...