質問: この問題で答えはmust haveだったのですが、なぜshould haveではだめなのですか? この問題で答えはmust haveだったのですが、なぜshould haveではだめなのですか?
回答: no. 2 さんの言う通り、この should have は「~した方がよかったのに」という意味と「~したはずだ」という意味との二重性がありますね。そういうあいまい性があるからこそ、「~したはずだ」という意味で should have を使うことは少ない、と「ジーニアス英和、第5版」の should の項目には書いてあります。