Редактировать: Я нашел еще лучшее решение, которое работает с ResourceDictionaries:
Assembly.LoadFrom(@"C:\temp\test.dll");
ResourceDictionary rd = new ResourceDictionary();
rd.Source = new Uri("/test;component/myresource.xaml");
Ну, я не мог заставить его работать с ResourceDictionaries, поэтому вместо этого я использую старые добрые файлы ресурсов;)
Для всех интересующихся вот как я это сделал:
Assembly a = Assembly.LoadFile(@"C:\temp\test.dll");
ResourceManager rm = new ResourceManager("NameOfResource", a);
object o = rm.GetObject("xyz");
Вы можете получить «NameOfResource» с помощью Reflector, как предложил Иан.