Coded modulation scheme of high coding gain is presented for slowly-varying flat fading channels. The scheme introduces a product construction employing two types of codes: "standard" good codes and codes that are more suitable for the fading channel. Short-blocklength codes of unique features are thus obtained. Using this approach, codes of bandwidth efficiencies 1,2, and 3 bits/s/Hz are detailed. An iterative decoding algorithm for this product construction is devised. It relies on separate columns/rows decoding linked by (reliability) information transfer. Simulation results reveal that these codes compare favorably with known codes of short block-length.