Work-around is great! Also, before I tried your work-around, I discovered that if I added a second wizard page to the control (during design-time), the disappearing control problem went away.

Also, the updated wizard control that includes the cancel button_press events, removed the code that toggles the visibility of the header panel based on the value of a wizard page's IsWelcomePage property. The code for the cancel event wizard control:
Code:
    Public Overridable Sub OnSelectedPageChanged(ByVal e As EventArgs)
        Static oldSelection As WizardPage = Nothing
        If Not (oldSelection Is Nothing) Then
            oldSelection.Visible = False
        End If
        If Not (m_SelectedPage Is Nothing) Then
            CType(m_SelectedPage, WizardPage).Visible = True
        End If
        Dim tabChanged As Boolean
        If m_SelectedPage Is Nothing Then
            tabChanged = Not (oldSelection Is Nothing)
        Else
            tabChanged = Not (m_SelectedPage.Equals(oldSelection))
        End If
        If tabChanged And Me.Created Then
            RaiseEvent SelectedIndexChanged(Me, EventArgs.Empty)
        End If
        oldSelection = CType(m_SelectedPage, WizardPage)

        ' Update title/description/icon
        Dim page As WizardPage = Me.SelectedPage
        If page IsNot Nothing Then

            Me.Invalidate()

            If page.Icon IsNot Nothing Then
                Me.picIcon.Image = page.Icon
                Me.picIcon.Visible = True
            Else
                Me.picIcon.Visible = False
            End If

            btnPrev.Enabled = (Me.SelectedIndex > 0)

            If page.IsLastPage Then
                btnNext.Text = FinishButtonText
            ElseIf page.IsWelcomePage Then
                btnNext.Text = StartButtonText
            Else
                btnNext.Text = NextButtonText
            End If

        End If
    End Sub
The code how I modified it:
Code:
    Public Overridable Sub OnSelectedPageChanged(ByVal e As EventArgs)
        Static oldSelection As WizardPage = Nothing
        If Not (oldSelection Is Nothing) Then
            oldSelection.Visible = False
        End If
        If Not (m_SelectedPage Is Nothing) Then
            CType(m_SelectedPage, WizardPage).Visible = True
        End If
        Dim tabChanged As Boolean
        If m_SelectedPage Is Nothing Then
            tabChanged = Not (oldSelection Is Nothing)
        Else
            tabChanged = Not (m_SelectedPage.Equals(oldSelection))
        End If
        If tabChanged And Me.Created Then
            RaiseEvent SelectedIndexChanged(Me, EventArgs.Empty)
        End If
        oldSelection = CType(m_SelectedPage, WizardPage)

        ' Update title/description/icon
        Dim page As WizardPage = Me.SelectedPage
        If page IsNot Nothing Then
            Me.lblPageTitle.Text = page.Title
            Me.lblDescription.Text = page.Description
            If page.Icon IsNot Nothing Then
                Me.picIcon.Image = page.Icon
                Me.picIcon.Visible = True
            Else
                Me.picIcon.Visible = False
            End If

            btnPrev.Enabled = (Me.SelectedIndex > 0)

            If page.IsLastPage Then
                btnNext.Text = FinishButtonText
            Else
                btnNext.Text = NextButtonText
            End If

            If page.IsWelcomePage Then
                btnNext.Text = StartButtonText
                Me.Top3DLine.Visible = False
                Me.pnlHeader.Visible = False
            Else
                Me.Top3DLine.Visible = True
                Me.pnlHeader.Visible = True
            End If

            Me.Invalidate()
        End If
    End Sub
Hopefully that made sense. The changes come after the comment "Update title/description/icon".