Can i use OCX's with late binding

I am in the process of writing a payroll app that is using ocx's for the employee calculations, however as the legislation changes i need to be able to load more than 1 version of the control

some sample pseudocode for those who remember it.

####################################

Dim control as new control

if year = 2000 then
...
... Load TaxCalcs2000 as control
...
elseif year = 2001 then
...
... Load taxCalcs2001 as control
...
Endif

Control.move 0,0
control.visible = true

####################################

Do i have to include the reference for each control in the app or can i use some sort of createobject method to load the correct control at runtime.

Or would it be more sensible to change the ocx's to dlls, if so, how do i instance the forms from the dlls to display in the app.

Any help would be appreciated. Beer will be provided as soon as i figure out the SMTP protocols to deliver it.