You are correct in your thoughts...at least with MLB rulebook
Section 9.08
(d) Score a sacrifice fly when, before two are out, the batter hits a ball in flight handled by an outfielder or an infielder running in the outfield in fair or foul territory that (1) is caught, and a runner scores after the catch, or (2) is dropped, and a runner scores, if in the scorer’s judgment the runner could have scored after the catch had the fly been caught.
Rule 9.08(d) Comment: The official scorer shall score a sacrifice fly in accordance with Rule 9.08(d)(2) even though another runner is forced out by reason of the batter becoming a runner.