Terraform plan and providers usage

Scenario:
I have a region, us-west-2, and I have created an sqs queue called sqs_results_us using terraform. I now want to add an additional region, eu-west-2, and create a different sqs queue there, lets call it sqs_results_eu.

My main.tf for my root module contains these providers now:
provider “aws” {
region = “us-east-1”
}
provider “aws” {
alias = “eu_west_2”
region = “eu-west-2”
}
provider “aws” {
alias = “us_west_2”
region = “us-west-2”
}

I also have an SQS module that looks like this:
module “sqs_queues”{
source = “…/common/sqs”
providers = {
aws-eu = aws.eu_west_2
aws-us = aws.us_west_2
}
}
In my sqs module folder I have a providers.tf that looks like this:
terraform {
required_providers {
aws-us = {
source = “aws”
version = “>= 2.51.0”
}
aws-eu = {
source = “aws”
version = “>= 2.51.0”
}
}
}

In my sqs module folder I have 2 files, main_us.tf and main_eu.tf to create sqs queues in respective regions. The sqs queue in the us region (main_us.tf):
resource “aws_sqs_queue” “sqs_results_us” {
name = “results-us”
delay_seconds = 0
max_message_size = 262144
message_retention_seconds = 345600
receive_wait_time_seconds = 0
visibility_timeout_seconds = 30
provider = aws-us
}
After adding in the code to create queues for the eu-west-2 region my terraform plan says that the US queue still needs to be created even though I just created it. I did enable TF_LOG=trace and noticed that the provider was getting set to the first region listed in providers {} of the sqs module and not utilizing the provider of the resource:
2021-11-17T16:02:01.942-0600 [TRACE] vertex "provider["registry.terraform.io/hashicorp/aws"].eu_west_2"
If I swap the positions of the providers so the US provider is first then the “add” goes away because its now setting to the us-west-2 region, so it finds the resource already created.

Am I doing something wrong with how I am passing down my providers to modules/resources? Is this a bug or a limitation and I would have to create a 2nd module and split out the providers so there is only 1 provider being passed down to resources?

I am using terraform 1.0.6 version.