Answer: Because the compiler says so. Removing the cast gives:

 [exec] src/native/TypeConverter.cpp:353:54: error: no matching function for call to 'titanium::TypeConverter::javaDoubleArrayToJsNumberArray(_jshortArray*&)'