My research has concluded that Unicode versions of Delphi (2009 to XE3) do not generate the correct markup for ActiveX Controls using the provided wizards.
Further-more, changes to the RTL and VCL since Delphi 2007 mean that, even if you produce the necessary source markup manually, your controls will not behave properly when embedded in non-Delphi applications (such as Visual Studio and dBASE Plus). Much of this relates to the VCL's presumption of a VCL-compliant Parent
property value, where the update of properties such as ParentFont
will result in an Access Violation error.
The solution in my case has been to produce the exported ActiveX Controls in Delphi 2007 (with it being the latest version to "play fair" with other ActiveX Control consumers)
Hopefully this information will save you the long and annoying fact-finding process I had to go through in order to come to this conclusion.