There is nothing different from the Aurelius point of view to retrieve the tables. It's just a select statement executed in the database. If UniDAC works but IBDAC doesn't, there might something with the connection configuration, I guess.
You can try to execute the SQL directly using IBDAC or directly in the database and see what does it return:
SELECT RDB$RELATION_NAME AS TABLE_NAME
FROM RDB$RELATIONS
WHERE
RDB$VIEW_BLR IS NULL AND
(RDB$SYSTEM_FLAG = 0 OR RDB$SYSTEM_FLAG IS NULL)
ORDER BY RDB$RELATION_NAME