You are indeed correct in both your statements. A _track_ is translated most of the time by _voie ferrée_. The error would be to translate it as _chemin de fer_, which is itself composed of one or more _voies ferrées_. A _rail_ is translated as _rail_.