They have. They were the better team against Colombia in the entire match bar the final 10 mins of regular time, and the first 15 minutes of extra time, and they were much better than Sweden. Colombia IMO are better than both teams Croatia defeated in pens, while Sweden in a similar level.
A week ago I would have had Croatia as heavy favorites, but after those 2 performances, no way. At the same time, you never know these things. We saw Belgium barely surviving Japan and then eliminating Brazil, so it all depends what teams show. If they're both at their best, I would say Croatia but they have been extremely inconsistent in this world cup, while England has been one of the most consistent teams. On other words, Croatia's ceiling is higher, but England's average is higher than Croatia's average.