﻿<?xml version="1.0" encoding="utf-8"?>
<InstanceReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Version>2.2.0.7</Version>
  <hasSegments>false</hasSegments>
  <ReportName>Stock Repurchase Program</ReportName>
  <ReportLongName>1100 - Disclosure - Stock Repurchase Program</ReportLongName>
  <DisplayLabelColumn>true</DisplayLabelColumn>
  <ShowElementNames>false</ShowElementNames>
  <RoundingOption />
  <HasEmbeddedReports>false</HasEmbeddedReports>
  <Columns>
    <Column>
      <LabelColumn>false</LabelColumn>
      <Id>1</Id>
      <Labels>
        <Label Id="1" Label="6 Months Ended" />
        <Label Id="2" Label="Jul. 31, 2010" />
      </Labels>
      <CurrencyCode>USD</CurrencyCode>
      <FootnoteIndexer />
      <hasSegments>false</hasSegments>
      <hasScenarios>false</hasScenarios>
      <Segments />
      <Scenarios />
      <Units>
        <Unit>
          <UnitID>USD</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>USDPerShare</UnitID>
          <UnitType>Divide</UnitType>
          <NumeratorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </NumeratorMeasure>
          <DenominatorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </DenominatorMeasure>
          <Scale>0</Scale>
        </Unit>
      </Units>
      <CurrencySymbol>$</CurrencySymbol>
    </Column>
  </Columns>
  <Rows>
    <Row>
      <Id>2</Id>
      <Label>Stock Repurchase Program</Label>
      <Level>0</Level>
      <ElementName>dds_StockRepurchaseProgramDisclosureAbstract</ElementName>
      <ElementPrefix>dds</ElementPrefix>
      <IsBaseElement>false</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>true</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole />
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText />
          <NonNumericTextHeader />
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDataType>xbrli:stringItemType</ElementDataType>
      <SimpleDataType>string</SimpleDataType>
      <ElementDefenition>No definition available.</ElementDefenition>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
    <Row>
      <Id>3</Id>
      <Label>Stock Repurchase Program</Label>
      <Level>1</Level>
      <ElementName>us-gaap_ScheduleOfTreasuryStockByClassTextBlock</ElementName>
      <ElementPrefix>us-gaap</ElementPrefix>
      <IsBaseElement>true</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>false</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole>terselabel</PreferredLabelRole>
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText>&lt;table style="font-size:10pt; font-family:'Times New Roman',times,serif;"&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;p style="MARGIN: 0in 0in 0pt"&gt;&lt;b&gt;&lt;font style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;Note 10.&amp;nbsp; Stock Repurchase Program&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt 13.5pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;The Company was authorized by its board of directors in November 2007 to repurchase up to $200 million of its Class A Common Stock under an open-ended plan (&amp;#147;Stock Plan&amp;#148;).&amp;nbsp; This authorization permitted the Company to repurchase its Class A Common Stock in the open market or through privately negotiated transactions.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt 13.5pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt 13.5pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;During the three and six months ended July 31, 2010, the Company repurchased 3.0 million and 7.2 million shares of stock for approximately $77.6 million and $182.6 million at an average price of $26.12 and $25.39 per share, respectively, which completed the remaining authorization under the Stock Plan.&amp;nbsp; No shares were repurchased under the Stock Plan during the three and six months ended August 1, 2009.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt 13.5pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 0pt 13.5pt"&gt;&lt;font style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman" size="2"&gt;In August 2010, the Company was authorized by its board of directors to repurchase up to $250 million of its Class A Common Stock under a new open-ended plan.&amp;nbsp; This authorization permits the Company to repurchase its Class A Common Stock in the open market or through privately negotiated transactions.&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
</NonNumbericText>
          <NonNumericTextHeader>Note 10.&amp;nbsp; Stock Repurchase Program
&amp;nbsp;
The Company was authorized by its board of directors in November 2007 to repurchase up to $200 million of its</NonNumericTextHeader>
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDataType>us-types:textBlockItemType</ElementDataType>
      <SimpleDataType>textblock</SimpleDataType>
      <ElementDefenition>This element may be used to capture the complete disclosure pertaining to an entity's treasury stock, including the average cost per share, carrying basis for each class of treasury stock, description of share repurchase program authorized by an entity's Board of Directors, the treatment of the purchase price in excess of the current market value, number of shares held for each class of treasury stock, and other information necessary to a fair presentation.</ElementDefenition>
      <ElementReferences>No authoritative reference available.</ElementReferences>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
  </Rows>
  <Footnotes />
  <NumberOfCols>1</NumberOfCols>
  <NumberOfRows>2</NumberOfRows>
  <HasScenarios>false</HasScenarios>
  <MonetaryRoundingLevel>UnKnown</MonetaryRoundingLevel>
  <SharesRoundingLevel>UnKnown</SharesRoundingLevel>
  <PerShareRoundingLevel>UnKnown</PerShareRoundingLevel>
  <HasPureData>false</HasPureData>
  <SharesShouldBeRounded>true</SharesShouldBeRounded>
</InstanceReport>
