Agh. Я обнаружил, что читатель должен быть закрыт, чтобы получить возвращаемое значение! Итак, внутри блока if {} выше я добавил:
myReader.Close(); // Need to close data reader before getting return value.
int returnValue = (int)myCommand.Parameters["@returnValue"].Value;
... и теперь все работает ОК!