This line is just getting the first type declared by the DLL:
var type = dll.GetTypes().First();
This is not good practice. You should select a type based on some criteria.
Obfuscation may change the ordering of types in the assembly (perhaps due to name changes).
I recommend that you do this instead:
var type = dll.GetTypes().First(typeof(ICustomConversion).IsAssignableFrom);
That will select the first type that implements your interface.