BP has lost an appeal to cancel the terms of its multi-billion-dollar settlement with businesses over the 2010 Gulf of Mexico oil spill disaster.