The advantages to ad_form are consistent form behavior throughout an application, inline error reporting etc. There may be some newer technology we could use to rewrite this, but so far it has worked.
The question is if your acs-kernel is 5.6.0. You can check this by visiting the URL /acs-admin/apm/ under your installation and checking the version number for the acs-kernel package.
If this is the case, I am working on a tutorial for customizing a subsite that would be perfect to help you. If you are using a version older than 5.6.0 the techniques are different.