3.0 is a drop in replacement from a changelog structure standpoint, but there were some breaking underlying Java API changes which is why there was the version jump from 2.x to 3.x.
http://www.liquibase.org/v3_upgrade.html lists some of the changes but your particular problem seems to be that you have a class that is using the liquibase.database.structure.type.DataType object that moved to liquibase.structure.core.DataType in 3.0.
If you recompile your custom change classes against liquibase 3.0 the compiler should find this and any other API changes.