My biggest objection has always been the ability to somehow 'ruin' metal ore while mining it. Ore is generally crushed as part of the smelting process anyway, how the heck do you lose it just because a novice miner can't mine out a whole chunk?
Regardless of what solution is eventually used, that problem will need to be addressed. Gems I can sort of see, but ore and coal just make no sense at all.
Look at it another way. You, the omniscient player knows there's ore there. But your rookie miner hacks away at it and throws it away in the "invisible gravel dump". Experienced miners know how to cut rocks to be usable as well as realizing that this isn't just garbage, but is really valuable iron or gold ore.
Her'es my thoughts on improved mining:
1) Make mining time a factor of z-level. Deeper mining is harder then surface mining. Right now there's a definite difference in speed between mining soil vs. rock, so couldn't you also make it more difficult to mine the further you go down? You can jsutify this in your head in a variety of ways (properly bracing tunnels, checking for stability, lighting, gas pockets) but I don't think you need to actually implement those. You don't have to micromange anything else to that extent. You don't have to tell your woodcutters to drop tress the right way or to check to make sure the wood is usable. It just happens. We don't need to micromanage mining, especially consdiering how much of it you have to do in the game. I'm fine with just assuming that miners do all the necessary precautions to do their job well, which is why rookies take longer then veterans. Anyway, so every z-level below surface should add to the time it takes to mine. So close to the surface speeds would be pretty unchanged. Once you get to about the middle z-levels (5-15) you'll notice a difference. Even legendary miners would have a slow down. And on the deep levels (15+) it would make even legendary miners break stone like novices.
Now, this wouldn't have a huge impact on most people's gameplay. People that normally have shallow forts will be unaffected, and people (like me) who like to dig really deep forts would learn instead to go horizontal rather then vertical. However, it would slow down "mass-mining" quite a bit. And considering HFS and other specials are usually located lower, it would slow down the mid-to-end game mining progression. Once you've minded out the surface levels, you'll have to take the speed hits to go deeper for resources.
This could also be balanced by increased ores & gems the deeper you go, but I think it works kind of like that as is, depending on the ore.
2)Making mining always drop stone, but attach quality levels to stone. So a rookie miner will hack away and result in a poor quality stone. This would then cap the maximum quality of anything produced by that stone. So if a rookie miner pops out a low quality stone, even a legendary stonecrafter can't make anything better then 1 or 2 grades up from that. This would make experienced miners very important, especially for people wanting to maximize their wealth. It will also increase the time before people can start pumping out exceptional level gear. I think Artifacts would bypass that considering their rarity, but maybe masterpieces can only be accomplished with high level starting goods. So masterpieces will be much rarer as you have to wait until you have legendary miners pumping out legendary stones before your legendary mason can make a legendary wall with it

3)Ores: if a rookie miner hacks away at ore, it should drop as the base stone and not an ore. Your'e right, it doesn't make sense that you can hack a wall and nothign comes out, but it is believable that a novice would mark iron ore as "just gabbro" or whatever the base stone for iron is and never look back. So you could have diamonds embedded inside a stone, but nobody knows it because the miner was a rookie.