SBS Server Migration Tool Failure

Recently when attempting to migrate a customers SBS 2003 box to SBS 2011 we were getting the following error in our SourceTool.log

10/23/2011 01:10:51  !Error! BPAEngine:	Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.BPAException: Unexpected PSRuntime exception. ---> System.Management.Automation.CommandNotFoundException: The term 'get-mbcamodel' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
   at System.Management.Automation.CommandDiscovery.LookupCommandInfo(String commandName, CommandOrigin commandOrigin)
   at System.Management.Automation.CommandDiscovery.LookupCommandProcessor(String commandName, CommandOrigin commandOrigin, Nullable`1 useLocalScope)
   at System.Management.Automation.CommandFactory._CreateCommand(String commandName, CommandOrigin commandOrigin, Nullable`1 useLocalScope)
   at System.Management.Automation.Runspaces.Command.CreateCommandProcessor(ExecutionContext executionContext, CommandFactory commandFactory, Boolean addToHistory)
   at System.Management.Automation.Runspaces.LocalPipeline.CreatePipelineProcessor()
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeHelper()
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeThreadProc()
   --- End of inner exception stack trace ---
   at Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.MBCAEngine.Run()
   at Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.BPALauncher.Run()
10/23/2011 01:10:51          Unexpected errors occurred during BPA scan.

The problem was that the first migration attempt failed and we had to roll back using the system state backup. After reinstalling several things and rebooting the server still no go. When we attempted to reinstall the Migration Preparation Tool it prompted that it was missing the Microsoft Baseline Configuration Analyzer 2.0. After reinstalling we got the following error in the log

10/23/2011 01:21:17  !Error! BPAEngine:	Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.BPAException: Unexpected PSRuntime exception. ---> System.Management.Automation.CmdletInvocationException: There has been a Best Practice Analyzer error for Model Id: Unknown. Registry key value not found. Key: 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BaselineConfigurationAnalyzer' Key Value: 'ModelsRoot'. ---> Microsoft.BaselineConfigurationAnalyzer.ErrorHandling.CommandLetException: There has been a Best Practice Analyzer error for Model Id: Unknown. Registry key value not found. Key: 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BaselineConfigurationAnalyzer' Key Value: 'ModelsRoot'.
   at Microsoft.BaselineConfigurationAnalyzer.CoreInterface.HelperFunctions.GetRegistryValue(RegistryKey key, String valueName)
   at Microsoft.BaselineConfigurationAnalyzer.CoreInterface.ModelHandler.InitializeModelsRoot(RegistryKey key)
   at Microsoft.BaselineConfigurationAnalyzer.CoreInterface.EngineManager.Initialize(String powerShellHost, String repositoryPath)
   at Microsoft.BaselineConfigurationAnalyzer.Cmdlets.GetModelCommand.BeginProcessing()
   --- End of inner exception stack trace ---
   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input, Hashtable errorResults, Boolean enumerate)
   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecute(Array input, Hashtable errorResults)
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeHelper()
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeThreadProc()
   --- End of inner exception stack trace ---
   at Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.MBCAEngine.Run()
   at Microsoft.WindowsServerSolutions.SmallBusinessServer.Tools.MigrationPrep.Wizard.BPALauncher.Run()
10/23/2011 01:21:17          Unexpected errors occurred during BPA scan.

Uninstalling MBCA through Add/Remove programs then reinstalling allowed for the migration to proceed.