It almost certainly is not the fault of the tuning app. I suggest spending some time working on getting relatively consistent readings (within a few cents), starting with the melodica out of its plastic tray. If you are getting wildly inconsistent readings, it is because you are not blowing consistently into the melodica. You can practice this on single notes, prolonging the stream of air until the reading stabilizes. Try also alternating between the key and adjacent keys (and an octave up or down). Experiment trying to change the reading up or down as you prolong the flow of air. The idea is to “get the feel” of determining the intonation of the key.
I revisit each key at least three times before finalizing the readings during a round of the entire process that involves opening the reed chamber, scraping, reclosing it and proceeding to the next round. Once I get within 3 cents + or minus on a key, confirmed with a couple of readings, I’m done with that key. On my tuning sheet I mark the ones that are not yet within those parameters.
You should be able to set your tuner app to read within a tolerance of one cent or 1/10 of a cent. Set it to one cent and it will be easier to get clear readings and not drive yourself crazy.
Once all keys are at + or – three cents, I call it good and play a few tunes. If I’m happy with the sound, I call it all good. I never recheck the melodica the next day or anytime soon thereafter, not wanting to drive myself crazy. I don’t believe there exists such a thing as a perfectly tuned melodica. But there definitely is such a thing as a melodica that is much better tuned today than it was yesterday.
Also, make sure you are pinging the reeds after scraping.