How about skipping all the reflection stuff and write it as dynamic functions instead?