Final working code for anyone that is interested in implementing something similar.
The linear interpolation works without changing m_fLerp because I'm constantly changing the origin vectors. So the origin gets closer and closer to the target vector without changing the lerp value.
void CCamera::RotateTo(D3DXVECTOR3 vecTarget)
//vecTarget must share origin with camera vector
//Cross product is axis of rotation
//Dot product is cos of angle of rotation
//Construct axis angle rotation matrix
//Compute destination right, up, and look vectors and save in class members
//OrgRt * T = DestRt
//OrgUp * T=DestUp
//OrgLk * T=DestLk
//Hard-coded LERP - later to be based on fastest angular rotation of current ship or camera
//Not used yet
//Interpolate between current up, right, and look vectors and target up, right, and look vectors by m_fLerp
//Save result of interpolation back into current up, right, and look vectors