I have thought about some reasons, the majority of them can be combined with other reasons.
Cremate a corpse need much fuel and time, also it's an unhealthy task.
Imagine the corpses of an entire army or a deadly plague, it would be impossible to cremate all of them. Also, families of the corpse might not have enough money to pay for a cremation.
Statistic (Low chance)
- Each time you drive a car there is a chance to die in an accident.
- Each time you fly in a plane there is a chance to crash the plane.
- Each time a soldier goes to a battlefield there is a chance of been reached by a bullet.
But... Why do people drive cars, fly in planes and are volunteers in the army? They could die... this is because, statistically speaking, there is a really low chance (at least in the two first) to die, people accept the risk in order to: travel faster, feel the speed of a car, fight from the country or even get high doses of adrenaline.
Your citizens don't think that they will be victims of a necromancer like you said:
Necromancers are thankfully rare and it's a difficult kind of magic to learn.
So they don't think that they'll be the next victims, there is a really low chance.
Through a dark ritual, the soul is forcefully removed from its eternal rest in the afterlife and is anchored back into the mortal world.
This means that there is some kind of connection, link or tie to your body. Using that I get a lot of conclusions.
Prison in the heaven
This link is our only backdoor from the heaven to the live realm (Earth).
The heaven can be a very beautiful place (or maybe not but see below) but it's isolated from the real world. Some persons (people with have alive relatives) want to see them (the relatives) even if they (the relatives) can't see them (the deaths). If their bodies are cremated, they would lose they door to our world and they won't be able to see their relatives again.
If you burn the corpse, his soul would feel the pain of the cremation. You don't want that your relatives get so much pain in their well deserved eternal rest, no?
Even more than the last, if you destroy their physical body, their soul will also be destroyed. Here you are literally killing them again, destroying their eternal rest and even "disintegrating" their souls (his conscience, memories will be lost).
Prison in the real world (ghost)
Think about a tree (the link), it has roots (earth), trunk (tunnel) and leaves (heaven).
Your physical body is the root, which holds the tree. When you die your corpse hold this tree (or ladder if you want) and you climb to the heaven. Then his leaves let you be there, if you set on fire the roots they will destroy it, the trunk and even the leaves, you would lose the "pillar" who let you be in the heaven and you will fall to our world. You will be here for all the eternity, suffering always cold, heat, thirst, hunger (humans needs) to the eternity and you won't be able to stop them (a ghost can't drink, eat, etc) but also you won't die (ghost are immortals). Again, do you want to make all your deaths relatives suffer this?
Souls are tied to the bodies by this "magical link" that I am always talking. This lets the souls not enter into the hell. If you break the link (burn the corpse) his soul will be free... free in the bad concept, they will be "free" of the tieds that "protect" him, What? Protection? Yes, the link is like a rope, the hell can't pull off the souls because the link is holding them, but if you break the link the hell would be able to capture them in the endless flames of the hell, an eternal and painful torture... and when the demon god bored with you, he will eat your soul.
There are legends that the gods will come someday to our world and will revive all our dead relatives and all of us will live happily. If you burn them, gods won't be able to resurrect them and they won't enjoy the eternal paradise in our world when gods come.
When you destroy the soul link (body-soul) the soul get "wandering" in earth (similar to the ghost concept). The difference is that this spectre will try to get a new body (of an alive person, of course) and this effect is called "possession". Obviously, you don't want to be possessed by your mother-in-law.
Well, this isn't my idea, I only want to show my agree with Neocognitron's answer. Sincerely I wouldn't choose his answer but it's very original.
Basically, your people believe in the flesh resurrection (after death they will reborn in another animal).
Here I have some ideas:
- But if you burn his flesh he won't be able to perform the incarnation (he won't have anything to offer in order to complete the resurrection).
- The resurrection takes some time (years to complete):
- While the soul is in this process it's linked to his corpse, if you hurt the corpse, the soul will be hurt (and his haven't cure, also this can explain why some people born with diseases), if you burn it, you will destroy the soul.
- The process is very slow and need the corpse to accomplish, you have to produce a slow but constant transference of the soul from the corpse to his new body (this take 9 month), in order to transfer the soul to his new body the last has to be destroyed in a slow process (exactly the same time needed to make the new body). Putrefaction destroys the body with a perfect rate, it's too fast (like fire) nor too slow (life mummification).
My ideas about how to protect the souls very simple, and are almost compatible with all my ideas.
- Enchanting/Blessing: With a magic charm or the blessing of a cure you can protect the soul from necromancers or be able to burn his body without hurting him. (Ask help for god to protect the soul / Make immune the soul to the hell / Break bad connection of resurrection, etc).
- Making a new link: Almost all the problems involved with burning are that they broke his link/bond/chain/tied to the real world and them they are wandering forever, been tortured, possessing bodies, insulated in the heaven, etc. You could build a (or some) magic/s monolith/s in where you enchant the soul linking it to the monolith instead of the corpse, solution!
Also, with this method maybe you could think about what would happen if the monolith...is...broken...