As you can see from the image below, flutter is referencing the wrong versions.
Even after moving them into the override section running a flutter pub cache clean
What is going on?
It is because you are using caret (^) sign before each package. By using this sign you are allowing your project to use newer versions of packages.
Easily just remove ^ before each page like below and check again:
dependencies:
  firebase_core: 2.4.0
  firebase_messaging: 14.1.4
  ....
More info in link
