You are correct in your assumption. You may cancel flight following on your own and be responsible for obtaining clearance in different airspaces, or you can remain on flight following and you should be handed off to approach control/ tower. I specify should because there are instances when a controller is unable to work with you due to workload or other issues. Always have your frequencies noted and a backup plan just in case this happens. I remember doing a VFR XC from Shreveport, LA to Alliance. We planned to cross smack dab right over the middle of DFW bravo airspace. A few miles from entering bravo, I requested clearance to enter. The controller said, "radar services terminated, squawk 1200, have a nice day".