Hi Sankar, use Skype and call the London ticket office, I find them to be most useful when it comes to changes etc. Options are limited I am afraid, if no codeshare is available. If I were you, I would get on google flights and see what flights they are from Muscat to Casablance if any, if none, look at other options for them to put you on, I would suggest the route you via Doha with Qatar, as they do have codeshares with them, means an extra stop in Qatar but could be one option.
2nd choice, look at prices for a new flight with a different carrier, if prices is less or the same get refund and change, of more, you can try and argue they need to find some other options.
Trouble is they are giving a valid reason and plenty of notice in theory, so not much they are legally required to do.