Я думаю можно ещё попробовать вариант со сканированием сборок на подходящие типы единожды, которые могут конвертироваться. Складывая их в обычный хэшсет, который потом только читать в CanConvert.
ну когда типы известны с самого начала, то можно вообще при инициализации посчитать да