קארל השנים עשר, מלך שוודיה