VInterpTo doesn't smoothly move camera

What you need to do it update the currentCameraPos each tick. So it should look something like this:

void ATheMeadowsCharacter::Tick(float DeltaSeconds)
 {
     Super::Tick(DeltaSeconds);
 
     if (isSwitchedCamera == true)
     {
         FVector currentCameraPos = FMath::VInterpTo(currentCameraPos, cameraTransformA, GetWorld()->GetDeltaSeconds(), 0.5f);
         FollowCamera->SetRelativeLocation(currentCameraPos);
         isSwitchedCamera = false;
     }
 }