This is a known limitation of using the /select switch with explorer.exe, it will only select the specific file if the parent folder is not already open.
You'll have to use an API call like SHOpenFolderAndSelectItems in stead. This function also allows for multiselect.