This would register one parent entry "DisplayName" and 3 sub-entrys under that parent entry.
If you need to go deeper in the path of the option table, you can do so as well, just pass more keys as required.
Syntax of AddToBlizOptions is:
table_name - Name of the Options Table (as passed to AceConfig/AceConfigRegistry)
display_name - String to be Displayed in the Blizzard Tree (defaults to table_name)
parent_name - display_name of the parent, if any.
path - List of keys that specify the path in the options table.
ACD:AddToBlizOptions(table_name, display_name, parent_name, path, ...)
IMO it's a glitch with the way they implemented the "AddToBlizOptions", but what your seeing is expected. You have to individually add each options table set to the BlizOptions window in order to get it to look like how your describing.
A glitch would imply a bug, which it is not. You can pass a sub-path argument to the AddToBlizzOptions call and add multiple sub-tables without creating them individually.