Preheat oven to 350°F (175°C). Grease and flour three 9-inch cake pans.
In a large bowl, cream together the butter, sugar, and brown sugar until light and fluffy. Add eggs one at a time, beating well with each addition.
Combine the flour and baking soda; add to the creamed mixture alternately with buttermilk. Stir in vanilla, coconut, and pecans.
Pour batter into prepared pans. Bake for 30-35 minutes, or until a toothpick inserted into the center comes out clean. Cool in pans on wire racks for 10 minutes; remove from pans and cool completely.
For the frosting: In a large bowl, beat butter and cream cheese until smooth. Gradually add powdered sugar, beating until light and fluffy. Stir in vanilla.
Frost the cooled cake layers. Store in the refrigerator.