Ваш код передает Ref! PublicSubnetIds
типа List<AWS::EC2::Subnet::Id>
в поле, которое, очевидно, ожидает данные типа AWS::EC2::Subnet::Id
.
Чтобы выбрать n-й элемент списка, используйте встроенную функцию Fn :: Select , т.е.
SubnetId1: !Select [0, !Ref PublicSubnetIds]
SubnetId2: !Select [1, !Ref PublicSubnetIds]