А почему тогда нет, если ты просто привёл один единственный вариант, где это не так? О_о
В США часто дают второе имя в честь отца/матери или дедушки/бабушки. Причём иногда вообще дают только инициал, если есть несколько родственников у которых имена на одну и ту же букву.
И даже не обязательно имя, бывает что второе имя это по сути вторая фамилия, типа Джон Фицджральд Кеннеди, фамилия отца - Кеннеди, а фамилия деда по матери (и соответственно девичья фамилия матери) - Фицджеральд. При этом Фицджеральд это вполне себе и имя в англоговорящих странах.

В Израиле второе имя дают в честь живого или умершего родственника (зависит от субэтноса), не обязательно матери/отца, бабушки/дедушки.
На самом деле зависит от культуры конкретной страны.
В некоторых странах второе имя дают в честь отца или деда для мальчиков и матери или бабушки для девочек. Есть вариации и с другими родственниками. Так что это почти то же самое что и отчество, просто оно не имеет специфического окончания типа -ович/евич/ич.