4 changes 

a) use lib instead unshift INC; 
b) use filepath instead of module name to load module 
c) add evals to prevent from dying when problems are encountered
d) cut all file extensions from file name to obtain module name.

Like this it should work for Dancer2 more or less.