In version 3.7 you have now the possibility to replace the audio file of a song from song details. If you replace the file that way, it will always update the cloud version.
If you just replace the audio file with Finder, the file will only be pushed to the cloud if the timestamp of the file is newer than the one in the cloud. Without a log file I am not able to tell why it was not pushed.