Why does roasting requires lower temperature than melting point
Reason 1:

For example if you have an porous ore and you melt it, the surface area will decrease dramatically. If you just roast it, the surface area will stay about the same.

A higher surface area will aid calcination proceses as more oxygen gets into contact with the surface and will eventually react.

Reason 2:

A higher temperature means more energy to heat the ore and this means it costs more money.

Reason 3:

Some oxides will volatilize when temperature is high (e.g. litharge).