Why is System.-Encoding and the Default-Encoding different (.NET Core)?

Ah, got it myselfs, what still works is getting the codepage over the current culture (or the InstalledUICulture):

public static System.Text.Encoding GetSystemEncoding()
{
    // The OEM code page for use by legacy console applications
    // int oem = System.Globalization.CultureInfo.CurrentCulture.TextInfo.OEMCodePage;

    // The ANSI code page for use by legacy GUI applications
    // int ansi = System.Globalization.CultureInfo.InstalledUICulture.TextInfo.ANSICodePage; // Machine 
    int ansi = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage; // User 

    try
    {
        System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
        System.Text.Encoding enc = System.Text.Encoding.GetEncoding(ansi);
        return enc;
    }
    catch (System.Exception)
    { }


    try
    {

        foreach (System.Text.EncodingInfo ei in System.Text.Encoding.GetEncodings())
        {
            System.Text.Encoding e = ei.GetEncoding();

            // 20'127: US-ASCII 
            if (e.WindowsCodePage == ansi && e.CodePage != 20127)
            {
                return e;
            }

        }
    }
    catch (System.Exception)
    { }

    // return System.Text.Encoding.GetEncoding("iso-8859-1");
    return System.Text.Encoding.UTF8;
}