In a medium-size bowl, whisk together pudding mix and milk until smooth. Add a couple of drops of gel food coloring and stir to mix well. Add more food coloring if a brighter color is desired. Cover the bowl and place it in the fridge for about 30 min.
Using a sharp knife, cut a circle about the size of a quarter and about an inch and a half deep in the center of each cupcake. Remove the cut-out cake from the cupcake. Fill the hole with pudding leaving about ¼ inch at the top.
Cut a circle about ¼ in thick from the removed piece of cupcake and gently place it on top of the pudding to close the top of the cupcake.
Cream together the butter and shortening with an electric mixer until well blended, light, and fluffy.
Add in vanilla and milk and continue to mix until incorporated.
Gradually add in powdered sugar, mixing after each addition until you have added in 3 cups of powdered sugar. The frosting should be soft but hold its shape in stiff peaks. If necessary, add up to one more cup of sugar to get the desired texture.
Add in a couple of drops of food coloring and mix; add more food coloring if necessary to reach the desired color.
Place frosting in a piping bag fitted with a large star tip.
Swirl frosting on the top of each cupcake and top with a heart-shaped sprinkle.
Serve immediately or in an airtight container in the refrigerator.