I see a couple of possible issues with the banner code you’re using:
The first coroutine (ShowBanner) is just waiting for 10 seconds and then calling another coroutine. It is also calling Advertisement.Show, which will not show a banner, but will instead show the default placement you have configured in your dashboard.
Your second coroutine (ShowBannerWhenReady) is calling Advertisement.Banner.Show twice.
I would actually recommend against using coroutines in this case. You should use the BannerLoadOptions callbacks to know when a banner is ready to show or if there was an error.
The message from the errorCallback will also help you confirm if the problem is with the integration or if there are just no banners available at the moment. If the error message says that No Fill was available, then that is likely an issue with the network and not your integration. We are working with our demand partners to ensure Unity developers are able to receive impressions. We are still in the ramp up period but we’re working toward fulfilling more banner requests.