¿Cómo puedo mostrar dígitos nativos específicos de la cultura en lugar de números arábigos?

Quiero convertir un valor numérico en una cadena, mostrando dígitos específicos de la cultura. Por ejemplo, el idioma dari utilizado en Afganistán (nombre de la cultura "prs-AF") usa Números arábigos orientales en vez de Números árabes utilizado en la mayoría de las culturas occidentales 0,1,2,3,4,5,6,7,8,9).

Al examinar la clase CultureInfo integrada en el Framework, enumera los dígitos nativos correctos (captura de pantalla tomada de la salida en LinqPad):

CultureInfo.CreateSpecificCulture("prs-AF").NumberFormat.NativeDigits

Sin embargo, cuando intento convertir un número en una cadena para mostrar en esa cultura, no obtengo los dígitos nativos:

var number = 123.5;
var culture = CultureInfo.CreateSpecificCulture("prs-AF");
Thread.CurrentThread.CurrentUICulture = culture;
Thread.CurrentThread.CurrentCulture = culture;
var text = number.ToString(culture);
Console.WriteLine(text);

¿Alguien puede decirme cómo mostrar los dígitos nativos?

Respuestas a la pregunta(3)

Su respuesta a la pregunta