No, the custom profile system supports use of user controls that implement ISettingControl
If you look in the mojoProfile.config file for example you will see that the TimeZone is implemented as ISettingControl and is configured like this:
<add name="TimeZoneId"
type=""
iSettingControlSrc="~/Controls/TimeZoneIdSetting.ascx"
resourceFile="ProfileResource"
labelResourceKey="TimeOffsetLabel"
defaultValue=""
requiredForRegistration="true"
regexValidationExpression=""
regexValidationErrorResourceKey=""
includeHelpLink="false"
/>
you could study the source code of the control it points to as an example of ISettingControl, it is a very simple interface, this example wraps a dropdown list but you could wrap a textbox if you just have a string value that you want to have custom validation against. When using an ISettingControl you should set the type to empty string as shown and the iSettingControlSrc points to your control which can be located in any folder but probably best to keep yours in a custom folder rather than mingle them in with built in controls.
Hope it helps,
Joe