It's just confusing for C++ developpers who learned to use class instead of struc, to be able to make an overridden class if necessary... But it's true that it's not very useful with the dialog boxes of an application !
Actually, I am using mostly struct for dialogs in my "end-user" apps.
I guess that at the top layer of code, access protection is not that important.