Абсолютно ничем не отличаются. Особенности транскрипции и произношения. Все они происходят от имени пророка Мухаммада (да благословит его Всевышний и да приветствует). Вот так пишется по-арабски: مُحَمَدْ
Дело в том, что о пророке Мухаммаде (ﷺ) было известно по всему миру еще задолго до распространения Ислама на эти земли, но правильное произношение приходило только с арабской грамматикой. Точно так же, как Салах ад-Дина аль-Айюби европейцы называли Саладином, а Ибн Сину - Авиценной , не имея необходимости произносить имя на арабский манер. С приходом Ислама люди стали называть детей именем пророка (ﷺ), но имя пророка в их языке уже звучало так, как звучало.
Проблема может быть и много банальнее. Как в случае, например, с неумением произносить французскую букву "r". Отсюда искажения.
В русском языке пророка называли Магомет. Отсюда в дальнейшем и производные: Магомед, Магамед и т.д.
У тюркоязычных распространены варианты Мухаммет и Мехмет.
Опять же, когда уровень образованности и знаний в области исламской науки и, как следствие, арабского языка в обществе на должном уровне, приходит и правильное произношение. По-русски наиболее верным будет вариант "Мухаммад" (с ударением на второй слог).
В Дагестане, например, в последнее время детей все чаще регистрируют под именем Мухаммад, хотя произносили так и раньше, но в паспорте в советское время все были Магомеды.
Не удивляйтесь, если встретите Мухаммада Магомедовича, здесь нет противоречия, это всего лишь традиция.
Сегодня же это чаще становится особенностью больше этнической, нежели территориальной, благодаря массовому переселению народов и прочей глобализации.
Также мама может дать имя ребенку такое или другое потому, что где-то слышала такую вариацию и ей понравилось.