Vielleicht redest du einfach zu viel auf deinen Hund ein. Solange du sie rufst, weiß sie, dass du noch in der Nähe bist auch wenn sie dich nicht sieht.
Außerdem würde ich den Hund nicht nur mit seinem Namen rufen. Vergleiche es z.B. mal mit deinem Mann. Du bist in der Küche und dein Mann ist z.B. im Wohnzimmer. Du rufst seinen Namen. Was passiert. Steht dein Mann dann direkt bei Fuß? Eher nicht. Er wird aus dem anderen Zimmer fragen, was du möchtest. So ähnlich ist das auch mit deinem Hund. Du rufst sie nur mit ihrem Namen. Wenn du ihr ein Komando gibst, sprichst du sie vorher auch mit ihrem Namen an. Dein Hund weiß also nicht, was du von ihr möchtest, wenn du NUR den Namen rufst. Dass sie ab und zu kommt, kann reiner Zufall sein.
Versuche das ganze einmal neu aufzubauen mit einem eigenen Komando. Dafür kannst du z.B. Komm oder Hier nutzen. Wichtig ist aber, dass dein Hund dann auch wirklich immer zu dir kommen muss und bleiben soll, bis DU sie frei gibst.
Ich weiß ja nicht, wie das bei dir mit den Gassi-Runden und der Fütterung passt. Aber versuch doch mal das Futter wärend des Spatziergangs zu geben. Immer, wenn sie bei dir ist bekommt sie etwas. Kommt sie nicht, holst du sie an der Schleppleine zu dir ran, dann bekommt sie aber höchstens ein verbales Lob, wenn sie dich dann beachtet. Kommt sie nicht, geht sie hungrig heim!
Laufe deinem Hund nicht hinterher! Das ist ein tolles Spiel für sie uns sie fühlt sich dir überlegen. In solchen Fällen ist es besser in die andere Richtung zu gehen (nicht die ganze Zeit rufen). Kommt sie dir hinterher, gehst du in die Hocke und lobst sie für´s Kommen.
Du musst einfach noch etwas konsequenter werden. Das hat auch nichts mit der Stimmlage zu tun. Dem Hund kommt es auf dein Verhalten und nicht auf die Stimmlage an. Je konsequenter DU bist, desto mehr Freiheiten kannst du deinem Hund später gewähren.