I would also in most cases extract it as you say, bottom up is easier for me for things like seats, for the dash I usually work top-down. But I would recommend breaking each larger object it into smaller pieces, like seat bottom, seat back for the seats (even separate the bottom sides from the middle if necessary). For a dash I start out with a box (or half a cylinder) that fits roughly the shape, then detach a clone of a section and then extrude or whatever you need to do to the pieces to create the extra detail components. I try to keep each of the larger sections welded together when you can actually see the seam, but a lot (if not all) of the detail pieces do not need to be re-welded together afterwards. For one it can be a real pain, and also will increase your edge count if all edges need to line up perfectly. So a lot of it is sort of “faked” (not literally bet that’s what I call it) in that it looks like one piece, but could be multiple sections aligned perfectly so you cannot see the difference. Most of this is highly dependent on how high detail the part needs to be, Lower poly work is much easier if the parts are smaller, when you need to deal with smoothing groups, the more complex the shape, the worse it will look sometimes, and breaking it up into sections is sometimes the only way to fix it. Also, sometimes it is better to start with a cylinder with a uniform curve, delete the ends and half of the cylinder, then start working from that instead of cloning a piece from the existing geometry, it all depends on the shape of the end product of course, but using pre-built shapes and cutting out a section that is useful to you can save a lot of hassle.
I also use “Instanced” clones of an object, where you can place one into the area you want to place a seat for example, start with 2 flat planes, place the first one into the area where the seat should go, rotate it so it aligns properly, then go back to your other plane and build the seat there (on the non rotated part). This will allow you to work on the seat with the world coordinates in place (move x axis on x, if it was rotated you would need to move X & Z to move a vertices to the same place), you can also switch from world to local orientation, but this doesn’t always work and can be a pain once the model is more detailed to move parts as you intended.
These are just a couple techniques I use in 3dsMax (but should work no matter what program you use), but everyone has their own way of doing things so this might not work for you, just thought I would add some of my methods. Let me know if you have any questions, I am currently working on the interior of a vehicle as well so I know how difficult it can be (I haven’t done too many car interiors yet so I’m still learning as I go), but once you get the basic shape down, it just comes down to adding details. Another good way to learn, is download some of the higher quality free models from various websites, one with a lot of vehicles, but some not so great, is http://tf3dm.com/3d-models/vehicles (try downloading the Lamborghini Aventador for example), or this one Free 3D Models and Objects Archive. Download: 3ds , obj , gsm , max models (again, mixed quality, but helpful) and take the model apart to see how they went about the issue, that is one of the best ways to learn some tricks to make it look good!
Hope that helps a bit! 