There is a free app in the Mac App Store called Icon Set Creator. You give it an image (of at least 1024×1024 pixels) and it will spit out all the sizes that you need (plus the Contents.json file).
iOS icons should not have any transparency. See more guidelines here.
After you have created the icon set, start Xcode and use it to open the ios folder in your Flutter project. Then go to Runner > Assets and delete the AppIcon item.
After that right-click and choose Import…. Choose the icon set that you just created.
Now close Xcode. Your icon is saved.