On the load balancing comparison - I think Cloudfront would only replace the static asset CDN? You still need to load balance incoming requests to GKE. Paying for an always-on rule isn't great, but you can't think of it as compute, because it's not an instance (like an AWS ALB), the GCP LB is serverless. Plus it's global, you would need several AWS regional ALBs to do this - and you would have a pre-warming/scaling nightmare on your hands with AWS.
On the load balancing comparison - I think Cloudfront would only replace the static asset CDN? You still need to load balance incoming requests to GKE. Paying for an always-on rule isn't great, but you can't think of it as compute, because it's not an instance (like an AWS ALB), the GCP LB is serverless. Plus it's global, you would need several AWS regional ALBs to do this - and you would have a pre-warming/scaling nightmare on your hands with AWS.