Preheat oven to 350°.
To prepare garlic butter, remove white papery skin from garlic heads (do not peel or separate the cloves). Wrap each head separately in foil. Bake at 350° for 45 minutes; cool 10 minutes.
Separate cloves; squeeze to extract garlic pulp. Discard skins. Combine garlic pulp, butter, shallots, and rosemary.
To prepare potatoes, place potato in a saucepan, and cover with water. Bring to a boil. Reduce heat; simmer 15 minutes or until tender.
Drain and return potato to pan. Add broth and buttermilk; mash to desired consistency. Cook 2 minutes or until thoroughly heated, stirring constantly. Stir in garlic butter, parsley, salt, and pepper.