UActorComponent::TickComponent(...) not ticking for some reason.

The subcomponent inherited from UActorComponent will be created using UActorComponent constructor. But UActorComponent constructor is like this

UActorComponent::UActorComponent(const FObjectInitializer& ObjectInitializer /*= FObjectInitializer::Get()*/)
	: Super(ObjectInitializer)
{
	OwnerPrivate = GetTypedOuter<AActor>();

	PrimaryComponentTick.TickGroup = TG_DuringPhysics;
	PrimaryComponentTick.bStartWithTickEnabled = true;
	PrimaryComponentTick.bCanEverTick = false;  // bCamEverTick is false
	PrimaryComponentTick.bAllowTickBatching = true;
	PrimaryComponentTick.SetTickFunctionEnable(false);

you need override constructor