This is working as expected.
MatchmakeSessionAsync used with any network option will only return once everything is initialized, including your network connection being connected.
If you want to manage the network connection yourself, you would have to use a CustomNetworkHandler or the new delayed network API added in 1.2.0:
Session.AsHost().Network.StartXXXNetworkAsync - https://docs.unity3d.com/Packages/com.unity.services.multiplayer@1.2/api/Unity.Services.Multiplayer.IHostSessionNetwork.html