On reading Spectre scolaire's post, I realized that I said something wrong about Sardinian (but this made me think about Italian as well). I'm not completely sure, because I passed my only exam of phonetics a long long time ago, and the only phonetics symbols I'm really accustomed to are those used for English (I never thought of checking phonetics symbols for Italian or Sardinian).
Coming to the point, in the couples of consonants I mentioned about Sardinian d-dd, l-ll, n-nn, r-rr, s-ss, I think the double consonant here are not geminated, but they are just an orthographic convention for writing different sounds. So, the single "s" (in Sardinian) is always [z] and the double "ss" can only be [ss]. I don't know how to write IPA symbols here, but "r" and "rr", "d" and "dd" are surely allophones. I'm not very sure about "n-nn" and "l-ll", they sound more or less like the corresponding Italian consonants (not considering local pronunciation).
As for the Italian, I don't know if someone has already discussed the fact that most of the geminated consonants were couples of different consonants in Latin (ottimo from optimus, otto from octo, fatto from factus, ammirazione from admiratio, and so on).
As for the single "s" it can be in Italian both "s" and "z", but only very few people, and only in central Italy, as far as I know, pronounce them correctly: in North Italy and in Sardinia the single "s" is always [z], unless it is the first letter; in South Italy there's a tendence to pronounce the single "s always like a non-geminated [s].