Не думаю, что они когда-нибудь сольются в один продукт. Microsoft намеренно оставила многое из Silverlight, чтобы сохранить небольшой размер. Кроме того, существует множество проблем безопасности, которые Silverlight должен соблюдать при работе в браузере. И, конечно, они разработали его так, чтобы он работал на ПК или Mac (к сожалению, этого нельзя сказать о .NET Framework).
Я рад, что ресурсы распределяются между WPF и Silverlight. Они должны были быть похожими с самого начала. В результате портировать проект Silverlight в WPF относительно легко. С другой стороны, переход от WPF к Silverlight не так прост, просто потому что в WPF всегда было больше возможностей, но это просто природа зверя.
UPDATE:
Итак, ваш пересмотренный вопрос интересен. Было бы здорово, если бы Microsoft могла позволить вам переключить режим работы вашего приложения между Silverlight-подобной функциональностью и WPF. Однако они столкнутся с множеством проблем, причем не только с безопасностью, но и с базовым поведением некоторых из легких элементов управления Silverlight по сравнению с многофункциональными элементами управления WPF. Эти различия могут еще больше осложнить жизнь разработчика.
Например, в WPF есть встроенная система множественных отмен и повторов в текстовых полях. В Silverlight такого нет, поэтому мне пришлось написать свое. Чтобы разработчик мог учесть подобные вещи, ему пришлось бы встроить в приложение множество проверок функций.
Учитывая все вышесказанное, я полагаю, что возможен переход во время компиляции, как вы описали. Но я все еще думаю, что вряд ли Microsoft создаст такую возможность в ближайшее время.