There's nothing that should have changed between DM and DMZ regarding the select_XXX functions and field protection. I just checked it, and the function works fine, both on Postgres and MySQL.
Check the troubleshooting section of the manual, and verify the version of CodeIgniter you are using.
Also, you are using the select_func method wrong. Read the manual again - you must include a parameter to represent the alias: