Это сочетание именно с таким порядком слов не кодифицировано в нормативных источниках. Для ответа на вопрос о прописной/строчной важно знать, в каком значении и контексте используется данное сочетание (это имя сказочного персонажа или просто обозначение уродливой злой старухи) и, если это имя персонажа, с какой целью разрушается традиционный порядок слов в нем.
В словаре В. И. Даля зафиксировано: «ЯГА или яга-баба, баба-яга, ягая и ягавая или ягишна и ягинична, род ведьмы, злой дух, под личиною безобразной старухи». В данном контексте яга-баба пишется строчными как имя нарицательное. Но словарь Даля не является нормативным справочником по современному русскому языку.
Если речь идет о шотландском короле XI века, о трагедии Шекспира, опере Верди, балете Молчанова, то ударение Макбет в образцовой литературной речи и сейчас признается ошибочным (поскольку, как Вы правильно пишете, приставка Мак- в шотландских фамилиях никогда не бывает ударной). Во всех этих случаях правильно говорить Макбет. И только в названии повести Н. Лескова сохраняется традиционный (прижившийся в русском, но ошибочный с точки зрения английского языка) вариант, правильно: «Леди Макбет Мценского уезда».
Откуда в русском языке появилось ударение Макбет? Один из крупнейших исследователей имен собственных А. В. Суперанская предполагает, что перенос ударения произошел под влиянием имени другого шекспировского героя – Гамлета. Ведь имя Гамлет изначально тоже произносилось с ударением на последнем слоге (под влиянием французской традиции). Позднее укоренилось привычное нам произношение Гамлет. «За компанию» с Гамлетом изменил место ударения и Макбет, но, в отличие от Гамлета, изменил с правильного на неправильное.